C# winform关于datagridview中的列的数据类型转换问题

摘要:
今天,我们了解到datagridvie中列的数据在数据库中属于int类型!将其放入datatable并绑定到datagridview!关键是重新格式化cellforming事件中的单元格,并设置所需的样式数据。asp中有一个控件。net,类似于datagridview。Dataview有这样一个行绑定事件,可以轻松解决这个问题!Winform不熟悉这个问题。解决它需要很多时间!解决方案是取消选中datagridview中的自动添加列,即空行。P=446453&seqNum=5以下是示例:usingSystem;使用System.Collections.Generic;使用System.ComponentModel;使用System.Data;使用System.Drawing;使用System.Linq;使用System.Text;使用System.Windows.Forms;namespacetest2{publicpartialclassForm2:Form{publicForm2(){InitializeComponent();}privatevoidForm2_Load{//TODO:这行代码将数据加载到表“yuxiang UsomDataSet.Cd_DeskName”中。

今天有一同学问到关于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}",
                  "不好");
                }
                }
            }

        }
    }
}

免责声明:文章转载自《C# winform关于datagridview中的列的数据类型转换问题》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇golang 服务平滑重启小结I2S (Inter—IC Sound) 总线下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Winform知识点

C#知识点: 1.sendtoback()和bringtofront() 如下的代码: button2.Dock = DockStyle.Top; button1.SendToBack(); button1.Dock = DockStyle.Top; button3.Dock = DockStyle.Bottom; 运行后,3个button的顺序始...

WinForm控件之【ToolTip】

  基本介绍 信息提示控件,用户将指针移过关联控件时显示信息,页面新增该控件后其他所有面板可视控件都会新增toolTip的关联文本内容属性。 常设置属性 AutoPopDelay:当指针在工具区域内保持静止时,工具提示窗口保持可见的时间长度; InitialDelay:指针在工具区域内保持静止时,多长时间触发提示窗口显示(毫秒单位); IsBalloon:...

C# DataGridView控件用法大全

动态添加新行 //方法一: int index = this.dataGridView1.Rows.Add(); this.dataGridView1.Rows[index].Cells[0].Value = "第1列单元格"; this.dataGridView1.Rows[index].Cells[1].Value = "第2列单元格"; //方法二:...

C#窗体控件DataGridView常用设置

C#窗体控件DataGridView常用设置 在默认情况下,datagridview的显示效果: 1.禁用最后一行空白。   默认情况下,最后一行空白表示自动新增行,对于需要在控件中进行编辑,可以保留 dataGridView1.AllowUserToAddRows = false;   上述禁用,仅是将用户界面交互的自动新增行禁了,但还是可以通过代码:...

WinForm 子线程修改主线程(UI线程)

原文http://www.cnblogs.com/SkySoot/archive/2012/03/14/2396552.html 我们先来看一段运行时会抛出 InvalidOperationException 异常的代码段: 1 public partial class TestThread : Form 2 { 3 public Test...

winform窗体(六)——DataGridView控件及通过此控件中实现增删改查

DataGridView:显示数据表,通过此控件中可以实现连接数据库,实现数据的增删改查 一、后台数据绑定:    List<xxx> list = new List<xxx>();      dataGridView1.DataSource = list;      //设置不自动生成列,此属性在属性面板中没有      data...