2009-06-18 9 views
0

次のテンプレートは、の動的情報をカラーボックスに示しています。どのようにしてStackPanelのコンテンツの幅を広げることができますか?

ただし、ボックスはDockPanel/screenのと常に一致します。です。

固定幅のをBorder要素に置くことができましたが、非常に長い顧客名が途切れることがありました。

どのようにして、幅がコンテンツの幅に基づいて拡大/縮小されるべきかを、<table>のようにHTMLで表現することはできますか?

HTML:

<table> 
    <tr> 
     <td style="background-color: #eee; padding: 5px"> 
      the table will be as wide as this text 
     </td> 
    </tr> 
</table> 

XAML:

<Window.Resources> 
    <DataTemplate x:Key="CustomerTemplateShow"> 
     <Border CornerRadius="5" Background="#eee" Padding="5"> 
      <StackPanel Orientation="Horizontal"> 
       <TextBlock Text="{Binding FirstName}"/> 
       <TextBlock Text=" "/> 
       <TextBlock Text="{Binding LastName}"/> 
      </StackPanel> 
     </Border> 
    </DataTemplate> 
</Window.Resources> 

<DockPanel LastChildFill="False" Margin="10"> 
    <ContentControl 
     DockPanel.Dock="Top" 
     Content="{Binding SelectedCustomer}" 
     ContentTemplate="{StaticResource CustomerTemplateShow}"/> 
</DockPanel> 

答えて

2

最も簡単な方法は、あなたが好む方BorderのたHorizo​​ntalAlignment = "センター"(または左、または右に、設定することですあなたのレイアウトのために)。

+0

面白かった、働いて、私はそれを試みたと思った、ありがとう。 –

関連する問題