1

この図に示すように、Datagrid を作成しました --> http://img682.imageshack.us/img682/5109/datagrid.png

ユーザーがデータを入力する場所。列の 1 つで、Combobox を追加しました。現在、Datagrid ではセルにデータを入力できません。IsReadOnly="False" も機能せず、「EditMode 例外」が発生していました。だから、私がしたことは、テキストブロックを作成し、その中に次のようにコンボボックスとテキストボックスを作成したことです:

 <toolKit:DataGrid
                                 Width="725"
                                 Height="100" 
                                 HeadersVisibility="Column" 
                                 Focusable="True"
                                 RowDetailsVisibilityMode="Visible" 
                                 Background="#FF98A4B2"  x:Name="mf" >

                    <toolKit:DataGrid.Columns>
                        <toolKit:DataGridTemplateColumn Header="Ssss" Width="55">
                            <toolKit:DataGridTemplateColumn.CellTemplate>
                                <DataTemplate>
                                    <TextBlock>
                         <TextBox x:Name="mf_step" Width="50"/>
                        </TextBlock>
                                </DataTemplate>
                            </toolKit:DataGridTemplateColumn.CellTemplate>
                        </toolKit:DataGridTemplateColumn>
                        <toolKit:DataGridTemplateColumn Header="Aaaaa" Width="100">
                            <toolKit:DataGridTemplateColumn.CellTemplate>
                                <DataTemplate>
                                    <TextBlock>
                                      <ComboBox x:Name="cmb_act_mf" ToolTip="Choose Actor" Width="95" IsEditable="False">
                                      <ComboBoxItem Content=""></ComboBoxItem>
                                      <ComboBoxItem Content="Uuuu" IsSelected="True"></ComboBoxItem>
                                      </ComboBox>
                                    </TextBlock>
                                </DataTemplate>
                            </toolKit:DataGridTemplateColumn.CellTemplate>

                        </toolKit:DataGridTemplateColumn>

このユーザーを使用すると、セルにテキストを追加できますが、私自身、このアプローチには満足していません:( .これを使用すると、入力したコンテンツにアクセスできなくなり、何らかの保存などの別の用途に使用できなくなると思いますデータ構造またはDBの.............また、このコード{cmb_act_mfを使用すると、テキストボックスを使用して(ボタンクリック時、前の質問で提案されたように)コンボボックスにコンテンツを追加できません.Items.Add(txt_box.Text); } ... それも動作しません. ...................Datagrid を編集可能にする方法? コンボ ボックスを 1 つにその列のリスト/コンテンツは、ボタンのクリック時にテキスト ボックスから追加できます.また、セルのコンテンツ (ユーザーが入力した場所) に簡単にアクセスして、DS/DB に保存することができます.....Datagrid は正しい選択ですか?助けてください。

よろしくお願いします。助けていただければ幸いです。コード スニペットはありがたいものです。

4

1 に答える 1

0

MS WPFデータグリッドは、主にデータバインディングに重点を置いています。バインドするオブジェクトを作成してみてください。DataGridTemplateColumnを使用する代わりに、DataGridTextColumnとDataGridComboBoxColumnを使用すると、期待どおりに編集できます。ただし、値を取得するには、バインドされたオブジェクトのプロパティにアクセスする必要があります。

于 2010-02-24T21:32:11.040 に答える