WPF zone de texte Emballage

Je suis à essayer de comprendre comment obtenir une zone de texte pour l'envelopper de son contenu, cependant, la situation n'est pas tout à fait le même que le type "il n'a pas d'envelopper" scénario. Ma zone de texte est contenue à l'intérieur d'un DataTemplate qui est utilisé à l'intérieur d'un Telerik RadTabControl instance (à l'aide d'un ContentTemplatePresenter pour déterminer l'affichage) et le code XAML pour le DataTemplate ressemble à ceci:

<DataTemplate x:Key="NotesTemplate">
    <Grid>
        <Grid.RowDefinitions>
            <RowDefinition Height="Auto" />
            <RowDefinition Height="*" />
        </Grid.RowDefinitions>
        <TextBlock Text="Use the box below to record any general notes associated with this item." Style="{StaticResource Default}" />
        <TextBox TextWrapping="Wrap" AcceptsReturn="True" VerticalScrollBarVisibility="Auto" GridRow="1" Margin="20" Text="{Binding Notes, UpdateSourceTrigger=PropertyChanged}" />
     </Grid>
</DataTemplate>

La raison pour laquelle je dis qu'il ne tombe pas sous la normale", il n'a pas d'envelopper" le scénario est-il utilisé pour envelopper jusqu'à ce que j'ai dû changer la vue pour être redimensionnable à quoi que ce soit pour soutenir les diverses tailles d'écran de l'application sera exécutée. Quand j'ai fait que la zone de texte arrêté emballage parce que (sans doute) que l'utilisateur tape quelque chose de la zone de texte dit "j'ai besoin de plus d'espace", de sorte que le parent oblige, et la boîte se poursuit vers la droite indéfiniment (bien que la vue est des barres de défilement). J'ai essayé de fixer un MaxWidth à l'aide de la Liaison/RelativeSource, mais depuis que le parent est spécialement conçu pour faire pousser cette approche ne fonctionnera pas. Ce dont j'ai besoin à voir se produire est la boîte doit être la largeur de son " contenant des parents VisibleWidth. Sens, si la Fenêtre elle-même est de 1024x768, la zone de texte du MaxWidth doit être de 1024 et tout texte qui par la suite serait automatiquement automatiquement, mais si la Fenêtre pousse à 1280x1024 la boîte doit maintenant être 1280 et le texte en conséquence. J'ai essayé ce scénario avec cette expression de liaison, mais pas de chance:

MaxWidth="{Binding RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Window}}, Path=ActualWidth}"

La taille de la Fenêtre elle-même n'est pas en croissance, donc si je pouvais obtenir la Largeur de la Fenêtre (moins d'un certain montant pour couvrir la largeur des onglets qui font partie du TabControl) je crois qui serait à l'œuvre.

Des idées?

Fini par trouver le meilleur résultat en passant par un autre DONC, la question: stackoverflow.com/questions/386039/....

OriginalL'auteur RubyHaus | 2011-10-19