单击TextBlock以打开Expander对象WPF

时间:2013-12-23 19:46:40

标签: c# wpf xaml listview contextmenu

我对XAML并不擅长,我正试图做出类似的事情:

Image http://fc04.deviantart.net/fs71/f/2013/275/c/2/accordion_by_psdchat-d6oz0b5.jpg

我想要一些选项(橙色的选项)然后当我点击橙色选项时,它们会展开并显示更多选项。

这是我的小代码:

<ListView Background="#585858" Width="300" HorizontalAlignment="Left">
    <ListViewItem>
        <Grid Margin="15,5">
            <TextBlock Foreground="#FFABADB3" Text="MenuTitle" FontSize="20" Grid.Row="0"/>
            <Expander Grid.Row="1">
            </Expander>
        </Grid>
    </ListViewItem>
</ListView>

但它并不像我想要的那样真正起作用。 Textblock和Expander也在同一条线上。

以下是我的代码:

http://i.imgur.com/dbtNPUv.png

如果有人能指导我朝着正确的方向前进,我真的很高兴! 在此先感谢和节日快乐:)

1 个答案:

答案 0 :(得分:1)

将TextBlock放入Expander Header

<ListView Background="#585858" Width="300" HorizontalAlignment="Left">
 <ListViewItem>
   <Grid Margin="15,5">
     <Expander Grid.Row="1">
      <Expander.Header>
        <TextBlock Foreground="#FFABADB3" Text="MenuTitle" FontSize="20" Grid.Row="0"/>
      </Expander.Header>   
     </Expander>
   </Grid>
 </ListViewItem>
</ListView>

但如果您想从图片中获得设计,您将需要做更多的工作。您需要“重新模仿”ListViewItemExpander。默认模板与图片上的模板相差甚远。