Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/334.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# WPF—能够将多个控件组合在一起并显示多个控件中的一个';第'页;_C#_.net_Wpf_Devexpress - Fatal编程技术网

C# WPF—能够将多个控件组合在一起并显示多个控件中的一个';第'页;

C# WPF—能够将多个控件组合在一起并显示多个控件中的一个';第'页;,c#,.net,wpf,devexpress,C#,.net,Wpf,Devexpress,很抱歉这个奇怪的标题 假设我有一个包含3个值的组合框,a,B,C 如果选择了“A”,我想显示一组特定的控件。如果选择了“B”,我想显示一组不同的控件,但要显示在票证中完全相同的位置上 基本上类似于选项卡控件,但我不希望选项卡可见-但我需要某些“页面”,并根据绑定值显示其中一个页面 我知道我可以创建单独的用户控件,并根据combobox的值设置每个控件的可见性,但在我的wpf设计器中,我无法同时看到所有可能的“页面” 这可以在WPF中实现吗?谢谢。我最近遇到了一个非常类似的情况。我的解决方案是使用

很抱歉这个奇怪的标题

假设我有一个包含3个值的组合框,a,B,C

如果选择了“A”,我想显示一组特定的控件。如果选择了“B”,我想显示一组不同的控件,但要显示在票证中完全相同的位置上

基本上类似于选项卡控件,但我不希望选项卡可见-但我需要某些“页面”,并根据绑定值显示其中一个页面

我知道我可以创建单独的用户控件,并根据combobox的值设置每个控件的可见性,但在我的wpf设计器中,我无法同时看到所有可能的“页面”


这可以在WPF中实现吗?谢谢。

我最近遇到了一个非常类似的情况。我的解决方案是使用帧控件。该控件将允许在中加载各种。每个页面可能包含一组不同的控件,就像主窗口一样。如果框架上的导航被禁用,它应该非常接近您要查找的内容。样本Xaml:

 <Frame Name="thisFrame" Width="250" Height="400" 
  NavigationUIVisibility="Hidden" />

这将使框架显示所选页面。或者,您可以在此处提供参数,以设置新页面中UI控件的默认状态。如果以这种方式传递对象,则可以将UI控件绑定到该对象以保存更改。

这是我的示例解决方案。请注意,它使用DevExpress 11,它具有从选项卡控件中删除选项卡标题的功能。(其中UsePage1和UsePage2在我的viewmodel中是布尔值。在给定的时间内,只有一个是真的)



非常感谢您的快速响应!我刚刚发现DevExpress 11还有一个隐藏实际选项卡的选项。我一定会尝试你的解决方案,再次感谢。祝你好运!如果你的解决方案最终奏效,我鼓励你把它作为这个问题的答案贴出来。它确实奏效了!我会在星期一寄一份样品。再次感谢您的帮助。使用ValueConverter将自然容器的可见内容绑定到组合框的特定值如何?这会起作用,但正如我前面所述,设计师不会是屏幕的准确表示。也就是说,可能有10个控件,其中在任何给定时间只有1个控件可见,其余控件不会占用任何空间。让它们在设计模式下都可见。设置绑定的布尔/可见属性。在设计模式下,让它们都返回true。
thisFrame.NavigationService.Navigate(new PageClassName() );
<DXTabControl SelectedIndex="0"  Width="Auto" >
<DXTabControl.View>
   <TabControlMultiLineView HeaderLocation="None" />
 </DXTabControl.View>
<DXTabItem IsSelected="{Binding Path=UsePage1}" >
</DXTabItem>
<DXTabItem IsSelected="{Binding Path=UsePage2}" >
</DXTabItem>
</DXTabControl>