我是在WinCE 上开发,需要在DataGrid上显示查询出来的数据。
在DataGrid属性中的TableStyles中添加了一个dataGridTableStyles1,其中MappingName为 DataTable1
绑定的数据源为dataTable1BindingSource [System.Windows.Forms.BindingSource]
在DataGridColumnStyles中添加了两个成员id, name。在其属性中的MappingName分别选中选中了id和name。在DataGrid中显示出来了表头id,name。我现在需要显示查询出来的数据。
       
       //创建代理
       private delegate void UpdateDataSafe(string text1, string text2);
        public void SetdataTable1(string str1, string str2)//设定dataTable1的值
        {
            if (this.dataGrid1.InvokeRequired)
            {
                UpdateDataSafe slt = new UpdateDataSafe(SetdataTable1);
                this.dataGrid1.BeginInvoke(slt, new object[] { str1, str2});
            }
            else
            {
                DataRow dr = DataTable1.NewRow();
                dr["id"] = str1;
                dr["name"] = str2;                DataTable1.Rows.Add(dr);
                
            }
        }但是在程序中没有这DataTable1,不知道代码如何实现。望高手多多指点!

解决方案 »

  1.   

    DataTable DataTable1=(DataTable)dataTable1BindingSource .DataSource ;
      
    *****************************************************************************
    欢迎使用CSDN论坛专用阅读器 : CSDN Reader(附全部源代码) 
    http://feiyun0112.cnblogs.com/
      

  2.   

    我测试后,发现有问题啊
      private delegate void UpdateDataSafe(string text1, string text2, string text3);
            public void SetdataTable1(string str1, string str2, string str3)//设定dataTable1的值
            {
                if (this.dataGrid1.InvokeRequired)
                {
                    UpdateDataSafe slt = new UpdateDataSafe(SetdataTable1);
                    this.dataGrid1.BeginInvoke(slt, new object[] { str1, str2, str3});
                }
                else
                {
                    DataTable DataTable1 = (DataTable)dataTable1BindingSource.DataSource;                DataRow dr = DataTable1.NewRow();
                    //DataRow dr =DataTable1.NewRow();
                    dr["id"] = str1;
                    dr["name"] = str2;
                    dr["address"] = str3;
                    DataTable1.Rows.Add(dr);
                    
                }
            }     
            private void button1_Click(object sender, EventArgs e)
            {
                SetdataTable1("11","22","33");
                MessageBox.Show("ok ");
            }运行后,DataTable1显示为空。
    在这一行DataTable DataTable1 = (DataTable)dataTable1BindingSource.DataSource; 显示黄色
    是没有绑定到DataTable1还是有什么其他的问题啊!