我试图在我的网格单元顶部减去前两个单元格(主页按钮和搜索)后面有一个黄色边框。我尝试了几个场景。
这是没有任何边框的应用程序标题。
当我在网格项上指定边框时,这是应用程序。这个问题是它会停止并且不会延伸到最后。
下面的图片延伸到最后,但它也在第1项和第2项的顶部。我试图在前两项上没有边框。
如果我可以帮助解决这个问题,请
WorkTabView.xaml
选定按钮上的边框但未扩展到最右侧 - 伪代码
<Grid>
....
<Button-Home Grid.Column0>
<AutoCompleteBox Grid.Column1>
<Border BorderBrush="Yellow" Grid.Column=2 BorderThickness="0,1,0,0">
<Button1/>
<Border/>
<Border BorderBrush="Yellow" Grid.Column=3 BorderThickness="0,1,0,0">
<Button2/>
<Border/>
<Grid>
边界一切,但我的目标是不要超过搜索和主页按钮Pseudo Code
<Border BorderBrush="Yellow" BorderThickness="0,1,0,0">
<Grid>
....
<Button-Home Grid.Column0>
<AutoCompleteBox Grid.Column1>
<Button1 Grid.Column2/>
<Button2 Grid.Column3/>
<Grid>
</Border>
抱歉伪代码,发布它以防止冗长的帖子和重复。我的目标是围绕一切,但搜索和黄色主页按钮。
答案 0 :(得分:1)
我在这里看到两个选项。
使用您的Option1,但添加一个额外的项目来填充剩余的剩余空间。
<Grid>
....
<Button-Home Grid.Column0>
<AutoCompleteBox Grid.Column1>
<Border BorderBrush="Yellow" Grid.Column=2 BorderThickness="0,1,0,0">
<Button1/>
<Border/>
<Border BorderBrush="Yellow" Grid.Column=3 BorderThickness="0,1,0,0">
<Button2/>
<Border/>
<Border BorderBrush="Yellow" Grid.Column=3 BorderThickness="0,1,0,0">
<SomeBlankItemToTakeUpRemainingSpace/>
<Border/>
<Grid>
如果使用了这个,我肯定会看到为边框创建自定义样式或模板以避免重复自己
或者,将两个部分分成两个单独的面板,并将它们存储在另一个面板中,该面板具有填充所有可用空间的默认行为,如DockPanel
<DockPanel>
<Grid DockPanel.Dock="Right">
<HomeButton>
<SearchBox>
</Grid>
<Border> <!-- this is last item in DockPanel, so should stretch to fill all available space -->
<Grid>
<Button1 Grid.Column1/>
<Button2 Grid.Column2/>
<Grid>
</Border>
</DockPanel>
我个人更喜欢第二种选择。 WPF中的LayoutControl用于布置控件,而不是用于创建项目表,所以对我来说这似乎是更清晰的方法。