2014-10-20 70 views
0

在WPF中,我想以一种应该遵循动态绑定文本块内容的方式显示控件。我使用的XAML是结构法:WPF显示一个动态文本块结尾的控件

<StackPanel Orientation="Vertical" > 
<DockPanel Margin="2,3"> 
    <StackPanel Orientation="Horizontal" DockPanel.Dock="Right"> //right side control here 
     <Button Tag="{Binding}" Style="{StaticResource ResourceKey=dbokLinkStyle}" Content="delete"> 
     </Button> 
    </StackPanel>  
    <WrapPanel Orientation="Horizontal"> 
     <TextBlock TextTrimming="WordEllipsis" TextWrapping="Wrap" Text="{Binding Quote}" FontWeight="Bold" FontSize="16" 
        VerticalAlignment="Center" ></TextBlock> 
     <Button Tag="{Binding}"> 
      <StackPanel> 
       <TextBlock Text="Page"/> 
      </StackPanel>  
     </Button> 
    </WrapPanel>               
</DockPanel> 
<StackPanel Orientation="Horizontal"> 
    Row 2 controls.. 
</StackPanel> 

我想将文本块后,立刻显示页按钮与结合行情。但是上面的xaml只能在右上角。那么我怎么才能让它跟随文本块控件。 布局更像是 enter image description here

+0

而不是一个wrappanel你不能有一个水平的堆栈面板? – Krishna 2014-10-20 09:47:01

+0

然后我不能看到文本块的全部内容,窗口的最大宽度是800,如果文本块内容超过了? – 2014-10-20 09:51:49

+0

对不起,我认为我理解错了,它是否是你想要的标题页面信息旁边的删除按钮? – Krishna 2014-10-20 10:07:32

回答

1

像这样的东西替换你的WrapPanel: -

<TextBlock TextWrapping="Wrap"> 
    <TextBlock TextTrimming="WordEllipsis" Text="{Binding Foo}" FontWeight="Bold" FontSize="16" VerticalAlignment="Center" /> 
    <Button Content="Page" /> 
</TextBlock> 

整个TextBlock的将包装及其内容(即内的TextBlock 按钮)太长。

+0

是的,这与我正在寻找的有点类似。在这个布局中是否有任何特定的规则,所以按钮页出现在TextBlock旁边。原因有时甚至在右边有足够的空间时,按钮出现在第二行,但有时在TextBlock本身旁边 – 2014-10-20 10:51:55

+0

@JMat不确定。也许受到某种东西的影响?您可能不想删除TextTrimming属性,因为它现在不相关,因为它永远不会被修剪。 – 2014-10-20 11:16:40