首先,我创建了一个WPF应用程序,然后将新的RibbonWindows添加到该应用程序中,并将其命名为RibbonWindow1。现在,我想通过下面的代码设置功能区控件的内容并显示功能区:
RibbonWindow1 ribWindow = new RibbonWindow1
{
Title = "This is a ribbon window",
Content = new UserControl1()
};
ribWindow.ShowDialog();
但是我看不到功能区栏。如果删除内容,将显示功能区,如果使用拖放功能,也可以显示它,但我想通过简单的代码动态地进行操作。
如果我可以将相关控件停靠在特定的网格单元中,这将对我有所帮助。有什么建议么?
最佳答案
在我对RibbonWindow的一点经验中,我看到功能区是Ribbonwindow本身内容的一部分。因此,一种解决方案可能是公开用于设置用户控件的功能区窗口的公共方法,如下所示:
<ribbon:RibbonWindow ...>
<Grid x:Name="LayoutRoot">
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<ribbon:Ribbon x:Name="Ribbon" />
//add a container for your usercontrol
<Grid Name="contentPlaceHolder" Grid.Row="1"></Grid>
</Grid>
在代码中,您可以设置类似
public void SetControl(UserControl uc)
{
this.contentPlaceHolder.Content = uc;
}