Infragistics xam 数据网格字段选择器选择
Infragistics xam data grid field chooser selection
我对 xam 数据网格的字段选择器有一个小问题。
我需要做的是将选中/取消选中行为从双击更改为单击,这是在这里完成的:
<igWPF:LabelPresenter.InputBindings>
<MouseBinding Command="{x:Static igWPF:FieldChooserCommands.ToggleVisibility}" MouseAction="LeftDoubleClick" />
</igWPF:LabelPresenter.InputBindings>
如果我将鼠标操作从左键双击更改为左键单击,而不是需要少单击一次,则需要多单击一次:两次用于 select 字段,一次用于选中/取消选中。
有什么办法吗,我做错了吗?
找到解决方法,问题是鼠标左键单击操作已被其他东西使用。
要解决此问题,我们需要删除或评论我上面发布的样式部分,并为 Label Presenter 创建一个行为。
public class OneClickFieldVisibility : Behavior<LabelPresenter>
{
private LabelPresenter Presenter { get { return this.AssociatedObject; } }
protected override void OnAttached()
{
Presenter.PreviewMouseLeftButtonDown -= Presenter_PreviewMouseLeftButtonDown;
Presenter.PreviewMouseLeftButtonDown += Presenter_PreviewMouseLeftButtonDown;
}
void Presenter_PreviewMouseLeftButtonDown(object sender, MouseButtonEventArgs e)
{
var fieldChooser = (FieldChooser)Infragistics.Windows.Utilities.GetAncestorFromType(Presenter, typeof(FieldChooser), false);
fieldChooser.ExecuteCommand(FieldChooserCommands.ToggleVisibility, Presenter.Field);
e.Handled = true;
}
}
我对 xam 数据网格的字段选择器有一个小问题。 我需要做的是将选中/取消选中行为从双击更改为单击,这是在这里完成的:
<igWPF:LabelPresenter.InputBindings>
<MouseBinding Command="{x:Static igWPF:FieldChooserCommands.ToggleVisibility}" MouseAction="LeftDoubleClick" />
</igWPF:LabelPresenter.InputBindings>
如果我将鼠标操作从左键双击更改为左键单击,而不是需要少单击一次,则需要多单击一次:两次用于 select 字段,一次用于选中/取消选中。
有什么办法吗,我做错了吗?
找到解决方法,问题是鼠标左键单击操作已被其他东西使用。
要解决此问题,我们需要删除或评论我上面发布的样式部分,并为 Label Presenter 创建一个行为。
public class OneClickFieldVisibility : Behavior<LabelPresenter>
{
private LabelPresenter Presenter { get { return this.AssociatedObject; } }
protected override void OnAttached()
{
Presenter.PreviewMouseLeftButtonDown -= Presenter_PreviewMouseLeftButtonDown;
Presenter.PreviewMouseLeftButtonDown += Presenter_PreviewMouseLeftButtonDown;
}
void Presenter_PreviewMouseLeftButtonDown(object sender, MouseButtonEventArgs e)
{
var fieldChooser = (FieldChooser)Infragistics.Windows.Utilities.GetAncestorFromType(Presenter, typeof(FieldChooser), false);
fieldChooser.ExecuteCommand(FieldChooserCommands.ToggleVisibility, Presenter.Field);
e.Handled = true;
}
}