如何在后面的代码中将DataGrid绑定到DataTable? - c#

如何在后面的C#代码中将DataGrid绑定到DataTable? (所有控件都是在运行时生成的,因此请不要使用XAML)

我尝试了Binding(),设置了DataContext,设置了ItemsSource,但是所有方法都不起作用:

/* Binding() fails */
Binding bind = new Binding();
bind.Source = dataset;
bind.Path = new PropertyPath("dataset.Tables");
datagrid.SetBinding(DataSet, bind);

/* DataContext fails */
datagrid.DataContext = dataset.Tables;

/* ItemsSource fails */
datagrid.ItemsSource = dataset.Tables;

我要做的就是将DataGrid绑定到DataTable,因此,当有新行添加到DataTable时,它将自动显示在DataGrid上。

我通过stackoverflow和google搜索所有内容,但奇怪的是我找不到解决方案。

参考方案

尝试绑定到数据集中的表之一:

datagrid.ItemsSource = dataset.Tables[0].DefaultView;

WPF WebBrowser甚至使用ObjectForScripting在单独的线程上锁定UI - javascript

在与WPF Web浏览器控件绑定的ObjectForScripting上调用方法时,网页UI锁定会出现一个奇怪的问题。进一步的研究使我们意识到整个UI(包括WPF应用程序而不是WebBrowser)都已锁定。使用的技术是带有Caliburn.Micro和Autofac的WPF。我在COM可见类上使用方法来推送到Caliburn.Micro提供的事件聚合器。进…

WPF-将窗口大小设置为子用户控件大小 - c#

我有一个选项卡控件,该控件动态地填充有包含各种大小的用户控件的选项卡。打开选项卡后,我希望窗口自动调整大小,使其在活动用户控件下有意义。有一种干净的方法可以做到这一点吗?我正在使用标准的mvvm模式。 参考方案 在Window类上使用SizeToContent属性。<Window x:Class="WpfApplication1.MainWi…

在datagrid(wpf)中选择行索引 - c#

如何在datagrid中选择行索引? 事件SelectionChanged以下代码不起作用: private DataGridRow dgr = new DataGridRow(); private void dataGrid_SelectionChanged(object sender, SelectionChangedEventArgs e) { thi…

使用TensorFlow Dataset API和flat_map的并行线程 - python

我正在将TensorFlow代码从旧队列界面更改为新的Dataset API。使用旧的接口,我可以为num_threads队列指定tf.train.shuffle_batch参数。但是,控制Dataset API中线程数量的唯一方法似乎是使用map参数在num_parallel_calls函数中。但是,我改用flat_map函数,该函数没有这样的参数。问:是…

LeetCode题解计算机为什么是基于二进制的?

可以是三进制么?二进制有什么好处?题解:为什么叫电子计算机?算盘应该没有二进制