使用UNION时无法在C#中编辑Datagridview

时间:2011-02-20 00:24:48

标签: c# .net datagridview

我有一个带有Datagridview的Windows窗体应用程序。启用编辑为TRUE,但我无法编辑datagrid中的字段。我正在使用具有SQL UNION的数据源。在没有UNION的情况下使用查询时,没关系。

我说的是甚至无法用F2或双击开始更改网格中的字段。我必须在这里使用union,但它似乎是一个问题,我找不到解决方案......

1 个答案:

答案 0 :(得分:2)

更多代码会有所帮助,但似乎您的SQL数据源足够聪明,可以知道查询是只读的。

正如你所说,当你脱掉工会时,工作正常。因此将网格设置为

的数据源

SELECT FOO FROM MyTable

可能导致创建UPDATE MyTable的相应更新查询。

不存在此类对应查询

SELECT FOO FROM MyTable UNION SELECT FOO FROM MyOtherTable

因此,网格可能足够智能,无法编辑这些字段。将DGV绑定到C#对象集合时,这是相同的行为;那些只读的列永远不会被编辑(他们怎么可能);