0
私はWPF DataGridを持っています。クリックするだけで、DataGridのすべてのセルを編集できます。
ダブルクリックで新しいウィンドウを開くこともできます。WPF DataGrid CellEditingTemplateのダブルクリックイベント
ダブルクリックイベントのような通常のDataGridTextColumnのために働くことをこの
<DataGridTextColumn Binding="{Binding Path=Name}" >
<DataGridTextColumn.EditingElementStyle>
<Style TargetType="TextBox">
<EventSetter Event="MouseDoubleClick" Handler="CellEditDoubleClick"/>
</Style>
</DataGridTextColumn.EditingElementStyle>
</DataGridTextColumn>
しかし、私はテキストボックスの編集モードにいるときに、このようなテンプレートを使用してそれを行う方法:現在
<DataGridTemplateColumn Header="Weight">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<TextBlock Text="{Binding Path=Weight}" />
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
<DataGridTemplateColumn.CellEditingTemplate>
<DataTemplate>
<TextBox x:Name="WeightEditTextBox" Text="{Binding Path=Weight}" >
<i:Interaction.Behaviors>
<helper:TextBoxInputRegExBehaviour RegularExpression="^\d+\,?\d*$" />
</i:Interaction.Behaviors>
</TextBox>
</DataTemplate>
</DataGridTemplateColumn.CellEditingTemplate>
</DataGridTemplateColumn>
編集モードのときにダブルクリックが発生します。
パーフェクトは、DataGridのすべての単一の列に追加する必要のない完全なDataGridで機能するソリューションになります。
DataGridには、MouseDoubleClickイベントがあります。それを使ってみましたか? –
はい、TextBoxセルの編集モードでは起動しません。 –