2009-04-10 15 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

解決策が見つかりました:ラムダ式を使用してエンティティをフィルタリングし、エンティティに直接バインドします。

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

+0

ああ...申し訳ありませんが、しばらくの間、winフォームアプリケーションを行っていません。私はそれを素早く見て、残念ながらasp.netとLinqDataSourceコントロールはありません – bytebender

関連する問題