从组合框选择中填充DataGrid(Linq到SQL)



在此处开发WPF应用程序。我有一个Linq-to-SQL类,它在设计器中包含几个表。

我有一个组合框,它在InitializeComponent上填充了SQL server元数据表的"Table_Name"列。。。

 public MainWindow()
    {
        InitializeComponent();
        DBConnDataContext db = new DBConnDataContext();
        var query = from s in db.tbdbDownloadTables
                    where s.Include == "Y" && s.Table_Schema == "ref" && s.WhereClause == null && s.CCCP == null
                    select s.Table_Name;
        ComboBox.ItemsSource = query;          
    }

这一切都很好:)

我有一个相邻的数据网格,我想在用户的组合框选择中填充它。如何将组合框选择(Table_Name)列引用到要填充DataGrid的表?我正在尝试使用Mapping.GetTables在上下文中创建一个表列表,但不确定从这里到哪里。。。

public void ComboBox_SelectionChanged(object sender, SelectionChangedEventArgs e)
   {
        string ComboBoxValue = ComboBox.SelectedItem.ToString();
        DBConnDataContext db2 = new DBConnDataContext();
        //var tableModel = (from tables in db2.Mapping.GetTables() select tables.TableName).ToList(); ????

        var query2 = from tab in db2.tbdbDownloadTables
                     where tab.Table_Name == ComboBoxValue
                     select tab;
         TableGrid.ItemsSource = query2;
        }

现在,您的ComboBox.SelectedItem将成为tbdbDownloadTable的对象,因此您可以尝试将发件人强制转换为该对象。

var myTable = sender as tbdbDownloadTables;

然后可以使用表中的属性。

最新更新