C# winform关于datagridview中的列的数据类型转换问题 | 您所在的位置:网站首页 › 数据库中的int类型 › C# winform关于datagridview中的列的数据类型转换问题 |
今天有一同学问到关于datagridvie中某一列的数据在数据库中的类型为int型!放到datatable中绑定到datagridview中!想把数据中的1or0的数据该为“是”or“否”!在网上查了半天资料没有查到自己想要的!老是不能将int型转成string。报异常。功夫不负有心人!还是解决了这个问题。问题关键就是在cellformating事件中重新格式化单元格,设置自己想要的样式数据。asp.net中有一个控件和datagridview相似dataview它有一个这样的行绑定事件,可以很容易解决这个问题!winform不太熟悉,解决这个问题浪费了不少时间!写完这个还报一个错。异常。解决的方法就是将datagridview中的自动添加列的勾去掉就可以了,也就是将空白的那一行去掉。oK!参考资料:http://www.informit.com/articles/article.aspx?p=446453&seqNum=5 下面是这个实例: using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms; namespace test2{ public partial class Form2 : Form { public Form2() { InitializeComponent(); } private void Form2_Load(object sender, EventArgs e) { // TODO: 这行代码将数据加载到表“yuXiangUsomDataSet.Cd_DeskName”中。您可以根据需要移动或移除它。 this.cd_DeskNameTableAdapter.Fill(this.yuXiangUsomDataSet.Cd_DeskName); } private void dataGridView1_CellPainting(object sender, DataGridViewCellPaintingEventArgs e) { } private void dataGridView1_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e) { if (e.ColumnIndex ==4) { e.FormattingApplied = true; DataGridViewRow row = dataGridView1.Rows[e.RowIndex]; if(row!=null){ if (row.Cells[4].Value.ToString() == "1") { e.Value = string.Format("{0}", "好啊"); } else { e.Value = string.Format("{0}", "不好"); } } } } }} |
CopyRight 2018-2019 实验室设备网 版权所有 |