2009-04-10 49 views
1

我使用Linq - 标准类型的东西(下面的代码)填充数据网格。出于某种原因,但是我的ultraDataGrid卡住了某种只读模式。我已经检查了我能想到的所有网格属性。这是绑定到Linq数据源的结果吗?任何人都有使用Linq的可更新网格的示例代码?在WinForms中使用Linq to SQL的可更新数据网格

db = New DataContext 
myData = New dataClass 
dataUltraGrid.DataSource = From table _ 
     In db.profiles _ 
     Select table.field1, table.field2... 

回答

1

找到解决方案:使用lambda表达式过滤实体并直接绑定到实体。

2

你真的不使用LinqDataSource控件......您绑定到一个列表db.profiles您的数据网格不知道更新或删除或仅接受绑定到该列表插入任何内容,我可以建议:

<asp:GridView ID="GridView1" runat="server" DataSourceID="LinqDataSource1" 
      AutoGenerateColumns="False" DataKeyNames="FooID"> 
      <Columns> 
       <asp:BoundField DataField="FooID" HeaderText="FooID" InsertVisible="False" 
        ReadOnly="True" SortExpression="FooID" /> 
       <asp:BoundField DataField="Name" HeaderText="Name" SortExpression="Name" /> 
       <asp:BoundField DataField="Description" HeaderText="Description" 
        SortExpression="Description" /> 
      </Columns> 
     </asp:GridView> 
     <asp:LinqDataSource ID="LinqDataSource1" runat="server" 
      ContextTypeName="YourDataContext" EnableDelete="True" 
      EnableInsert="True" EnableUpdate="True" TableName="Foos"> 
     </asp:LinqDataSource> 
+0

这是ASP的一个例子。我正在做winforms。那逻辑是什么样的? – Jeff 2009-04-10 13:58:56