如何在不使用xaml的情况下在datagrid中创建组合框列?

时间:2019-02-01 09:23:07

标签: c# wpf winforms combobox datagrid

(对不起,如果可能的话,不好意思;)

大家好!在Winforms中,我见过构造函数,用户可以在其中选择datagridview的数据源并更改每一列的类型,然后为每一列选择数据源,例如表1中的数据和表2中填充的组合框:

(Table 1)
UserID, RoleID, Login, Password
(Table 2)
RoleID, RoleName

如果我们在DataGridView中以“角色ID”选择栏中,我们可以选择,什么角色ID会随着角色的名字(的DisplayMemberPath =“角色名”和SelectedValuePath =“角色ID”)的组合框,当我们填写此表或写新行并更改组合框的值,我们可以只用一串代码将数据发送到数据库:

new testdbDataSetTableAdapters.UserTableAdapter().Update(testdbDataSet.User);

所以,我有一个问题:如何在没有大量代码的情况下使用相同的视图创建datagrid?我有代码,可以通过单击按钮填充datagrid和更新数据库表,但是没有组合框:

private void MainWindow_Loaded(object sender, RoutedEventArgs e)
{
    try
    {
        DataTable dt = new DataTable();
        var udt = new testdbDataSet.UserDataTable();

        new testdbDataSetTableAdapters.UserTableAdapter().Fill(udt);
        DataList.ItemsSource = udt;
    }
    catch
    { }
}

private void Btn1_Click(object sender, RoutedEventArgs e)
{
    try
    {

        var a = DataList.ItemsSource;
        var b = a as testdbDataSet.UserDataTable;
        new testdbDataSetTableAdapters.UserTableAdapter().Update(b);
        MessageBox.Show("Updated!");
    }
    catch (Exception Ex)
    {
        MessageBox.Show(Ex.Message);
    }
}

0 个答案:

没有答案