在菜单中更改宽度

时间:2012-03-05 13:24:24

标签: c# .net wpf xaml

我想知道如何在XAML中设置dinamic菜单宽度。我读到了'*',但在菜单中它没有用。我在C#中这样做了:

    public MainWindow()
    {
        InitializeComponent();
        menu1.Width = this.Width;
        toolBarPanel1.Width = this.Width;
    }

    private void Window_SizeChanged(object sender, SizeChangedEventArgs e)
    {
        menu1.Width = this.Width;
        toolBarPanel1.Width = this.Width;
    }

但我觉得更好的方法是在XAML中设置dinamic大小你能说我怎么做?

3 个答案:

答案 0 :(得分:2)

这不是在WPF中构建用户界面的方法。您最好阅读有关使用UI布局的信息,DockPanel可能对您有帮助。

答案 1 :(得分:0)

如果您将菜单放在网格中,您可以指示网格扩展菜单的大小,无论窗口是否改变其大小。

答案 2 :(得分:0)

“*”将占用可用空间。你可以使用比率。例如:

1.5*
2*
1*

1.5将是1的宽度的1.5倍.2将是1的宽度的2倍。这样,您可以控制宽度而不会使它们成为固定值。