我有从<{1}}填充的 DataGridView :
DataSource
BindingSource bs = new BindingSource();
bs.DataSource = reader.local();
dataGridView1.DataSource = bs;
返回类Model中的数据:
reader.local();
如何将字段class ClientJson
{
public int id { get; set; }
public string name { get; set; }
public string secondname { get; set; }
public int sex { get; set; }
}
中的值替换为自定义文本(男性,女性)?
答案 0 :(得分:1)
如果您不想或不能更改模型,可以使用CellFormatting
事件替换单元格值:
private void dataGridView1_CellFormatting(object sender, System.Windows.Forms.DataGridViewCellFormattingEventArgs e)
{
if (dataGridView1.Columns[e.ColumnIndex].Name.Equals("sex"))
{
int? sex = e.Value as int?;
// replace statement checks with your own conditions
if(sex == 0)
{
e.Value = "Male";
}
else if(sex == 1)
{
e.Value = "Female";
}
else
{
e.Value = "Unknown";
}
}
}
答案 1 :(得分:0)
您是否考虑过将属性类型更改为&#34; string&#34;?
类似这样的事情
ng-pattern="{{regex}}"
答案 2 :(得分:0)
你可以添加一个只有get的属性并将其添加到你的逻辑中。一个例子:
public string Gender{ get{ return this.sex==1?"Male":"female";}}
并且只绑定新属性Gender。
答案 3 :(得分:0)
你的意思是这样吗?
public string Sex
{
get
{
return this.sex;
}
set
{
this.sex=value=="1"?"male":"female";
}
}