Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/131.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 用C/C中的值填充DataGridView组合框++_C++_C_Winforms_Datagridview_Datasource - Fatal编程技术网

C++ 用C/C中的值填充DataGridView组合框++

C++ 用C/C中的值填充DataGridView组合框++,c++,c,winforms,datagridview,datasource,C++,C,Winforms,Datagridview,Datasource,我正在为大学创建一个windows窗体应用程序。我的数据存储在抽象数据类型的多表c数组中。每个数组都显示在它自己的datagridview中。这一切都没问题。 由于数据是像数据库中一样连接的,我在父表中添加了一个新列,并将ColumnType设置为DataGridViewComboxColumn。现在我需要用不同数组/datagridview的数据填充这个组合框 我已经尝试从我的数组中手动添加选项,如此问题中所述:。因为我需要使用C/C++并且这个例子使用vb,所以使用的函数不可用。我可以选择我

我正在为大学创建一个windows窗体应用程序。我的数据存储在抽象数据类型的多表c数组中。每个数组都显示在它自己的datagridview中。这一切都没问题。 由于数据是像数据库中一样连接的,我在父表中添加了一个新列,并将ColumnType设置为DataGridViewComboxColumn。现在我需要用不同数组/datagridview的数据填充这个组合框

我已经尝试从我的数组中手动添加选项,如此问题中所述:。因为我需要使用C/C++并且这个例子使用vb,所以使用的函数不可用。我可以选择我的列dataGridView1->列[0],但->项不存在


是否可以从我的数组中创建一个数据源来直接链接它们?还是我忽略了从数组中手动添加它们的方法?

您没有提供任何代码,也没有很好地描述在哪里遇到问题。假设要将未绑定列表填充到DataGridViewComboBoxColumn中,下面是一个简单的示例

C:

在本例中,我们创建一个DataTable,用所需的值填充它,并将其用作DataGridViewComboBoxColumn的数据源。显然,在DataGridView数据源中提供给该列的值必须与新DataTable dt中列表中的ID匹配

您可以将数组或其他数据转换为DataTable,甚至可以将它们直接用作数据源。这取决于你有什么数据。不过,原则将非常相似

VB.NET:

    Dim dt As DataTable
    dt.Columns.Add("ID", GetType(Int32))
    dt.Columns.Add("Category", GetType(String))
    dt.Rows.Add({1, "Fruits"})
    dt.Rows.Add({2, "Vegetables"})
    dt.Rows.Add({3, "Trees"})

    Dim dgCol As DataGridViewComboBoxColumn = Me.DataGridView1.columns("Category")
    dgCol.ValueMember = "ID"
    dgCol.DisplayMember = "Category"
    dgCol.DataSource = dt

我实际上认为没有代码可以提供。我想关于如何填充DataGridView的代码对我的问题没有帮助,因为我正在寻找函数来解决我的问题,我还不知道它们是什么。如果你认为有任何帮助,我会提供它。我在我的问题中描述我要求使用C或C++。关于如何用C语言或VB语言解决问题,你有什么想法吗?我因为错误而删除了答案,回答了C而不是C++。我把它拿回来了,因为PaltTe说它仍然是有用的。哦,我的错误,答案,对不起,我没有注意到你的标签是C++而不是C,它在文本中都没有击中我。不幸的是,我对Linux和ARDUNO的C++知识一无所知,我无法有意义地扩展我的答案,我删除了它,这样你的问题就没有答案了。再一次,对此感到抱歉。不用担心,它仍然帮助我找到了关于我的问题的更多细节,尽管它还没有解决。如果你能找回它,它可能也会帮助其他人。好吧,谢谢你,如果它至少有一点帮助的话,我很高兴。
    Dim dt As DataTable
    dt.Columns.Add("ID", GetType(Int32))
    dt.Columns.Add("Category", GetType(String))
    dt.Rows.Add({1, "Fruits"})
    dt.Rows.Add({2, "Vegetables"})
    dt.Rows.Add({3, "Trees"})

    Dim dgCol As DataGridViewComboBoxColumn = Me.DataGridView1.columns("Category")
    dgCol.ValueMember = "ID"
    dgCol.DisplayMember = "Category"
    dgCol.DataSource = dt