C# 窗体,UIDataGridView中,列宽度自适应父容器:
属性Columns,打开集合:
列属性:AutoSizeMode=Fill
UIDataGridView中,列的数据属性名,和list匹配:
属性Columns,打开集合:
列属性:DataPropertyName,和list的key对应。
UIDataGridView中,加载数据:
BindingList<TaxServiceCompanyUpdateTask> taskListSource = new BindingList<TaxServiceCompanyUpdateTask>();
foreach(TaxServiceCompanyUpdateTask item in taskList)
{
taskListSource.Add(item);
}
this.任务列表.DataSource = taskListSource;
其中,TaxServiceCompanyUpdateTask的属性,和列属性需要对应。
对于不需要显示的属性,可以添加列,设置为不可见。
UIDataGridView单元格点击事件CellClick:
// 获取当前行的索引
int currentRowIndex = e.RowIndex;
//行某个单元格的内容
object curPageObj=任务列表.Rows[currentRowIndex].Cells["curPage"].Value;
列表的刷新,更新某个单元格的值(待确定):
// 获取点击的行
DataGridViewRow selectedRow = 任务列表.Rows[e.RowIndex];
// 获取按钮列所在的单元格
DataGridViewButtonCell buttonCell = selectedRow.Cells["ops"] as DataGridViewButtonCell;
if (buttonCell != null)
{
// 在这里修改按钮的文字
buttonCell.Value = "执行中";
//buttonCell.ReadOnly = true;
任务列表.Refresh();
}
// 获取数据源的行
DataRowView rowView = 任务列表.Rows[e.RowIndex].DataBoundItem as DataRowView;
if (rowView != null)
{
// 获取数据源中的行
DataRow row = rowView.Row;
// 修改数据源中的值
row[e.ColumnIndex] = "执行中";
// 刷新 DataGridView 显示
任务列表.Refresh();
}
以上代码无效果。