0

シンプルな DataGrid を持つシンプルなウィンドウがあります。ウィンドウには、ItemsSource のバインドに使用するパブリック プロパティ ObservableCollection を含む ViewModel があります。これは私が使用するコードです。非常に基本的なことです。

PluginsView pv = new PluginsView();
pv.ShowDialog();

これは、入力される DataGrid の XAML です。Mode=TwoWay も試してみましたが、うまくいきませんでした。

<DataGrid AutoGenerateColumns="False" ItemsSource="{Binding Plugins}"               
   <DataGrid.Columns>
      <DataGridTextColumn Binding="{Binding Name}" Header="Name"/>
      <DataGridTextColumn Binding="{Binding DllName}" Header="DllName"/>
   </DataGrid.Columns>
</DataGrid>

セルをクリックしてデータを編集すると、次のエラーが表示され、プログラムがクラッシュします。スタイルは一切使用しません。すべてデフォルトです。pv.ShowDialog();でクラッシュします。ライン。

Cannot set OverridesDefaultStyle property in the default Style.

知っていることは何でも試しましたが、このエラーを解決できません。これはばかげているので、試してみるべきいくつかの提案を教えてください。ありがとうございました。

4

1 に答える 1

2

私は問題を見つけました。TextBoxのグローバルスタイルがあり、データグリッドセルをクリックすると、DataGridセルのTextBoxスタイルをグローバルスタイルでオーバーライドしようとしたため、例外が発生しました。この問題で2日間の作業が失われました。キーをグローバルスタイルに設定することで解決しました。

于 2012-12-06T10:08:44.293 に答える