如何在资源字典中改变expander的Header显示方向为竖排

HGSJJ 2017-09-20 11:37:20
如果是想要改变Expander标题文字的显示方向为竖排,在资源字典中应该如何更改?比如原始标题为“这是一个特殊控件”,显示方式从横排变成
“这







...全文
557 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
exception92 2017-09-26
  • 打赏
  • 举报
回复
<ContentPresenter Name="HeaderConternt" Grid.Row ="1" Margin="4" ContentSource="Header" RecognizesAccessKey="True"/> ->改为 <TextBlock Name="HeaderConternt" Grid.Row ="1" Width="8" Margin="4" TextWrapping="Wrap" Text="{TemplateBinding Header}"/>
HGSJJ 2017-09-25
  • 打赏
  • 举报
回复
一下部分即是资源字典里面的内容: <Style x:Key="VerticalExpander" TargetType="Expander" BasedOn="{StaticResource Overall}"> <Setter Property="Control.Margin" Value="0,0,0,5"/> <Setter Property="Control.Foreground" Value="#FFFFFF"/> <Setter Property="IsExpanded" Value="True"/> <Setter Property="Template"> <Setter.Value> <ControlTemplate TargetType="Expander"> <Grid> <Grid.ColumnDefinitions> <ColumnDefinition Width="Auto"/> <ColumnDefinition Name="ContentRow" Width="0"/> </Grid.ColumnDefinitions> <Border Name="Border" Grid.Column="0" Background="{StaticResource LightBrush}" BorderBrush="{StaticResource NormalBorderBrush}" BorderThickness="1" CornerRadius="2,2,0,0" SnapsToDevicePixels="True" > <Grid> <Grid.RowDefinitions> <RowDefinition Height="20" /> <RowDefinition/> </Grid.RowDefinitions> <ToggleButton IsChecked="{Binding Path=IsExpanded,Mode=TwoWay, RelativeSource={RelativeSource TemplatedParent}}" OverridesDefaultStyle="True" Background="{StaticResource NormalBrush}" /> <ContentPresenter Name="HeaderConternt" Grid.Row ="1" Margin="4" ContentSource="Header" RecognizesAccessKey="True"/> </Grid> </Border> <Border Name="Content" Grid.Column ="1" Background="{StaticResource WindowBackgroundBrush}" BorderBrush="{StaticResource SolidBorderBrush}" BorderThickness="1,0,1,1" CornerRadius="0,0,0,0" > <ContentPresenter Margin="3,3,0,3" /> </Border> </Grid> <ControlTemplate.Triggers> <Trigger Property="Expander.IsMouseOver" Value="true"> <Setter TargetName="Border" Property="Background" Value="{StaticResource DarkBrush}" /> </Trigger> <Trigger Property="IsExpanded" Value="True"> <Setter TargetName="ContentRow" Property="Width" Value="{Binding ElementName=Content,Path=DesiredWidth}" /> </Trigger> <Trigger Property="IsEnabled" Value="False"> <Setter TargetName="Border" Property="Background" Value="{StaticResource DisabledBackgroundBrush}" /> <Setter TargetName="Border" Property="BorderBrush" Value="{StaticResource DisabledBorderBrush}" /> <Setter Property="Foreground" Value="{StaticResource DisabledForegroundBrush}"/> </Trigger> </ControlTemplate.Triggers> </ControlTemplate> </Setter.Value> </Setter> </Style> 下面的是MainWindow.xaml里面的内容: <Window x:Class="ExpanderStyle.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Title="MainWindow" Height="350" Width="525"> <Grid> <Grid.ColumnDefinitions> <ColumnDefinition Width="Auto"></ColumnDefinition> <ColumnDefinition Width="*"></ColumnDefinition> </Grid.ColumnDefinitions> <Expander Grid.Column="0" IsExpanded="True" VerticalAlignment="Stretch" ExpandDirection="Left" HorizontalContentAlignment="Left" SnapsToDevicePixels="True" Style="{StaticResource VerticalExpander}" Header="TestExpander"> <Button Name="buttonTest">Test2</Button> </Expander> <TextBox Name="textTest" Grid.Column="1"></TextBox> </Grid> </Window> 下面是我自己定义的一个转换器,要把Expander的Header内容显示方式转换为竖排,东西都做出来了,就是不知道怎么在资源字典里面更改, namespace testExpand.Convert { class expanderConvert:IValueConverter { public object Convert(object value,Type targetType,object parameter,CultureInfo culture) { string result=""; if(value == null) return DependencyProperty.UnsetValue; string Header = (string)value; for(int i = 0;i < Header.Length;i++) { string zm = Header.Substring(i,1); result = result + zm.ToString() + "\r\n"; } return result; } public object ConvertBack(object value,Type targetType,object parameter,CultureInfo culture) { return DependencyProperty.UnsetValue; } } }
exception92 2017-09-20
  • 打赏
  • 举报
回复
你的资源字典代码呢

8,734

社区成员

发帖
与我相关
我的任务
社区描述
WPF/Silverlight相关讨论
社区管理员
  • WPF/Silverlight社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧