次の XAML は、テキスト ボックスの周りに奇妙な動作をするウィンドウを生成します。
<Window x:Class="WpfSandbox.CuriousExample"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="CuriousExample" Height="300" Width="300">
<DockPanel Margin="15">
<TextBox BorderThickness="1" BorderBrush="#FF000000"></TextBox>
</DockPanel>
</Window>
少なくとも私の限られたテスト中に何が起こるかというと、テキストボックスが挿入された境界線パターン (上/左は黒、右/下は灰色) でレンダリングされます。ただし、元の位置以外の位置にサイズを変更すると、テキスト ボックスの境界線全体が黒くなります。フォームが最初にロードされたときの正確な画面上のピクセル数にウィンドウを戻すと、ウィンドウは再び挿入されます。
このコードで問題を簡単に修正できるため、ピクセルスナップではないと思います。
<Window x:Class="WpfSandbox.CuriousExample"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="CuriousExample" Height="300" Width="300">
<DockPanel Margin="15">
<Border BorderThickness="1" BorderBrush="#FF000000">
<TextBox BorderThickness="0" ></TextBox>
</Border>
</DockPanel>
</Window>
私が見ているものについて、あえて説明してくれる人はいますか? それともすべて頭の中にあるのですか?
私が言ったように、上記の回避策はこの問題を解決することができます - ここで何が起こっているのかを理解しようとするだけです.
ありがとう、
-スコット