WPF学习之路(十二)控件(HeaderedContent控件)

时间:2023-03-09 17:36:36
WPF学习之路(十二)控件(HeaderedContent控件)

GroupBox

用来组织多种控件的常见控件,因为是内容空间,只能直接包含一项,需要使用面板一类的中间空间。

Header和Content可以是任意元素

<GroupBox>
<GroupBox.Header>
<WrapPanel Margin="">
<Image Source=".\Image\icon.png"></Image>
<TextBlock Text="Database List: " FontSize="" />
</WrapPanel>
</GroupBox.Header>
<GroupBox.Content>
<StackPanel TextBlock.FontSize="" Margin="">
<TextBlock Text="DB001" />
<TextBlock Text="DB002" />
<TextBlock Text="DB003" />
<TextBlock Text="DB004" />
<TextBlock Text="DB005" />
</StackPanel>
</GroupBox.Content>
</GroupBox>

WPF学习之路(十二)控件(HeaderedContent控件)

更多内容

http://www.dotnetperls.com/groupbox-wpf

https://msdn.microsoft.com/en-us/library/system.windows.controls.groupbox(v=vs.110).aspx

Expander 

类似GroupBox,包含一个按钮可以展开或折叠内容

<StackPanel Margin="">
<Expander>
<Expander.Header>
<WrapPanel Margin="">
<Image Source=".\Image\icon.png" Height="" ></Image>
<TextBlock Text="Database List: "></TextBlock>
</WrapPanel>
</Expander.Header>
<Expander.Content>
<StackPanel TextBlock.FontSize="">
<TextBlock Text="DB001" />
<TextBlock Text="DB002" />
<TextBlock Text="DB003" />
<TextBlock Text="DB004" />
</StackPanel>
</Expander.Content>
</Expander>
<Expander ExpandDirection="Left">
<Expander.Header>
<WrapPanel Margin="">
<Image Source=".\Image\icon.png" Height="" ></Image>
<TextBlock Text="Database List: "></TextBlock>
</WrapPanel>
</Expander.Header>
<Expander.Content>
<StackPanel TextBlock.FontSize="">
<TextBlock Text="DB001" />
<TextBlock Text="DB002" />
</StackPanel>
</Expander.Content>
</Expander>
<Expander ExpandDirection="Right">
<Expander.Header>
<WrapPanel Margin="">
<Image Source=".\Image\icon.png" Height="" ></Image>
<TextBlock Text="Database List: "></TextBlock>
</WrapPanel>
</Expander.Header>
<Expander.Content>
<StackPanel TextBlock.FontSize="">
<TextBlock Text="DB001" />
<TextBlock Text="DB002" />
</StackPanel>
</Expander.Content>
</Expander>
<Expander ExpandDirection="Up">
<Expander.Header>
<WrapPanel Margin="">
<Image Source=".\Image\icon.png" Height="" ></Image>
<TextBlock Text="Database List: "></TextBlock>
</WrapPanel>
</Expander.Header>
<Expander.Content>
<StackPanel TextBlock.FontSize="">
<TextBlock Text="DB001" />
<TextBlock Text="DB002" />
</StackPanel>
</Expander.Content>
</Expander>
</StackPanel>

WPF学习之路(十二)控件(HeaderedContent控件)

简化代码

创建一个ExpanderDemo类

public partial class ExpanderDemo : Expander
{
public ExpanderDemo()
{
InitializeComponent();
}
}
<Expander x:Class="Alex_WPFControl.ExpanderDemo"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
> <Expander.Header>
<WrapPanel Margin="">
<Image Source=".\Image\icon.png" Height="" ></Image>
<TextBlock Text="Database List: "></TextBlock>
</WrapPanel>
</Expander.Header>
<Expander.Content>
<StackPanel TextBlock.FontSize="">
<TextBlock Text="DB001" />
<TextBlock Text="DB002" />
        ...
</StackPanel>
</Expander.Content>
</Expander>

Window.xaml

<StackPanel>
<local:ExpanderDemo />
<local:ExpanderDemo ExpandDirection="Left" />
<local:ExpanderDemo ExpandDirection="Right" />
<local:ExpanderDemo ExpandDirection="Up" />
</StackPanel>

更多内容

http://blog.****.net/tcjiaan/article/details/6970200

https://msdn.microsoft.com/en-us/library/system.windows.controls.expander(v=vs.110).aspx

To be continue...