如何重新定位 WPF UniformGrid 中单个单元格的内容?
How can I reposition the content of a single cell in a WPF UniformGrid?
我正在使用 UniformGrid
创建键盘。键盘有通常的 0-9 按钮,外加一个 'Backspace' 按钮。我希望 'Backspace' 按钮小于数字按钮,因此我对其应用了 RenderTransform
。这一切都很好。
但是,我还希望 'Backspace' 按钮在 UniformGrid
单元格中重新定位(重新对齐)Right
和 Bottom
,以便它远离数字按钮。
下面是一张图片,其中红色箭头表示我想将 'Backspace' 按钮移动到哪里。
我尝试将 'Backspace' 按钮放在 ContentControl 中,并将 HorizontalContentAlignment 和 VeriticalContentAlignment
分别设置为 Right
和 Down
,但这不起作用。
这是一些示例 XAML:
<UniformGrid Columns="3" Rows="4">
<Button Content="1" />
<Button Content="2" />
<Button Content="3" />
<Button Content="4" />
<Button Content="5" />
<Button Content="6" />
<Button Content="7" />
<Button Content="8" />
<Button Content="9" />
<Button />
<Button Content="0" />
<!--<ContentControl HorizontalContentAlignment="Right" VerticalContentAlignment ="Bottom">-->
<Button Content="X">
<Button.RenderTransform>
<ScaleTransform ScaleX=".75" ScaleY=".75" />
</Button.RenderTransform>
</Button>
<!--</ContentControl>-->
</UniformGrid>
这可以做到吗?
尝试RenderTransformOrigin
<Button Content="X" RenderTransformOrigin="1, 1">
<Button.RenderTransform>
<ScaleTransform ScaleX=".75" ScaleY=".75" />
</Button.RenderTransform>
</Button>
应该可以,但我现在无法测试。
我正在使用 UniformGrid
创建键盘。键盘有通常的 0-9 按钮,外加一个 'Backspace' 按钮。我希望 'Backspace' 按钮小于数字按钮,因此我对其应用了 RenderTransform
。这一切都很好。
但是,我还希望 'Backspace' 按钮在 UniformGrid
单元格中重新定位(重新对齐)Right
和 Bottom
,以便它远离数字按钮。
下面是一张图片,其中红色箭头表示我想将 'Backspace' 按钮移动到哪里。
我尝试将 'Backspace' 按钮放在 ContentControl 中,并将 HorizontalContentAlignment 和 VeriticalContentAlignment
分别设置为 Right
和 Down
,但这不起作用。
这是一些示例 XAML:
<UniformGrid Columns="3" Rows="4">
<Button Content="1" />
<Button Content="2" />
<Button Content="3" />
<Button Content="4" />
<Button Content="5" />
<Button Content="6" />
<Button Content="7" />
<Button Content="8" />
<Button Content="9" />
<Button />
<Button Content="0" />
<!--<ContentControl HorizontalContentAlignment="Right" VerticalContentAlignment ="Bottom">-->
<Button Content="X">
<Button.RenderTransform>
<ScaleTransform ScaleX=".75" ScaleY=".75" />
</Button.RenderTransform>
</Button>
<!--</ContentControl>-->
</UniformGrid>
这可以做到吗?
尝试RenderTransformOrigin
<Button Content="X" RenderTransformOrigin="1, 1">
<Button.RenderTransform>
<ScaleTransform ScaleX=".75" ScaleY=".75" />
</Button.RenderTransform>
</Button>
应该可以,但我现在无法测试。