サイズが最大のエッジのボタンを作成したいと思います。均一な幅と高さを持つボタンを作成するにはどうすればよいですか?
この理由は、ボタンをDataGrid
列に埋め込まれた小さな情報サークルにしたいからです。
現在、私が持っている:
<DataGridTemplateColumn>
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<Button Content="i" Padding="2" Margin="0"
VerticalAlignment="Center"
HorizontalAlignment="Center"
Width="{Binding Source=Self, Path=Height}">
<Button.Template>
<ControlTemplate TargetType="{x:Type Button}">
<Grid>
<Ellipse Fill="#FFF4F4F5" Stroke="#FF6695EB"/>
<ContentPresenter Margin="0"
RecognizesAccessKey="False"
SnapsToDevicePixels="True"
VerticalAlignment="Center"
HorizontalAlignment="Center"
/>
</Grid>
</ControlTemplate>
</Button.Template>
</Button>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
。私が下記に投稿した解決策は、ボタンの測定を無効にするので、ハードコードされた値を必要としません。 – Rob
ありがとうございましたRob、そうですね、私は何かをハードコードしたくないので、編集直後にあなたのソリューションを見ています。クラスに両方のオーバーライドを追加することに決めました。設定されています。 –
Width/Heightをオプションでハードコードする機能が必要な場合は、OnPropertyChangedを使用するのではなく、MeasureOverrideにこれらの追加チェックを追加することをお勧めします。 – Rob