GridSplitters をマウスでドラッグすると、グリッド内の一部のスプリッターは正常に動作しますが、他のスプリッターは新しい位置にドロップする前に元の位置に戻ります。何度も試してみて、少しドラッグしてマウスボタンをすばやく放すと、ブロックが解除されることがありますが、ほとんどの場合、そうではありません。ときどき - ドラッグすると、すべてランダムに新しい位置にジャンプします。
スプリッターをクリックしてキーボードを使用するだけで、これらすべてが問題なく動作します。
使用されているスプリッターの数に関連しているようです。スプリッターが少ないほど発生しません。
多くの列で動作させるにはどうすればよいですか? 私のアプリケーションには、スクロール可能なグリッドに多数の列があります。スプリッタへのマウス入力をキャプチャしようとしましたが、うまくいきませんでした。
別の質問と同様の問題のようですが、回答がなく、詳細を追加したと思います。
<Window
x:Class="WpfApplication1.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow"
Height="480"
Width="800">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition
Width="40*" />
<ColumnDefinition
Width="40*" />
<ColumnDefinition
Width="40*" />
<ColumnDefinition
Width="40*" />
<ColumnDefinition
Width="40*" />
<ColumnDefinition
Width="40*" />
<ColumnDefinition
Width="40*" />
<ColumnDefinition
Width="40*" />
<ColumnDefinition
Width="40*" />
<ColumnDefinition
Width="40*" />
<ColumnDefinition
Width="40*" />
<ColumnDefinition
Width="40*" />
<ColumnDefinition
Width="40*" />
<ColumnDefinition
Width="40*" />
<ColumnDefinition
Width="40*" />
<ColumnDefinition
Width="300*" />
</Grid.ColumnDefinitions>
<GridSplitter
Grid.Column="0"
Width="6"
HorizontalAlignment="Right"
VerticalAlignment="Stretch" />
<GridSplitter
Grid.Column="1"
Width="6"
HorizontalAlignment="Right"
VerticalAlignment="Stretch" />
<GridSplitter
Grid.Column="2"
Width="6"
HorizontalAlignment="Right"
VerticalAlignment="Stretch" />
<GridSplitter
Grid.Column="3"
Width="6"
HorizontalAlignment="Right"
VerticalAlignment="Stretch" />
<GridSplitter
Grid.Column="4"
Width="6"
HorizontalAlignment="Right"
VerticalAlignment="Stretch" />
<GridSplitter
Grid.Column="5"
Width="6"
HorizontalAlignment="Right"
VerticalAlignment="Stretch" />
<GridSplitter
Grid.Column="6"
Width="6"
HorizontalAlignment="Right"
VerticalAlignment="Stretch" />
<GridSplitter
Grid.Column="7"
Width="6"
HorizontalAlignment="Right"
VerticalAlignment="Stretch" />
<GridSplitter
Grid.Column="8"
Width="6"
HorizontalAlignment="Right"
VerticalAlignment="Stretch" />
<GridSplitter
Grid.Column="9"
Width="6"
HorizontalAlignment="Right"
VerticalAlignment="Stretch" />
<GridSplitter
Grid.Column="10"
Width="6"
HorizontalAlignment="Right"
VerticalAlignment="Stretch" />
<GridSplitter
Grid.Column="11"
Width="6"
HorizontalAlignment="Right"
VerticalAlignment="Stretch" />
<GridSplitter
Grid.Column="12"
Width="6"
HorizontalAlignment="Right"
VerticalAlignment="Stretch" />
<GridSplitter
Grid.Column="13"
Width="6"
HorizontalAlignment="Right"
VerticalAlignment="Stretch" />
<GridSplitter
Grid.Column="14"
Width="6"
HorizontalAlignment="Right"
VerticalAlignment="Stretch" />
</Grid>
</Window>