1

TextBoxテキストを折り返し、で成長させようとしていWindowます。ScrollViewerHorizontalScrollBarVisibilityプロパティを設定しない場合は機能します。しかし、私がそうするならば、TextBox無限に成長します。この問題は、MaxWidthプロパティをTextBoxに設定することで解決されますが、その場合、値TextBoxを超えることはありません。私の考えは、 'sMaxWidthにバインドするMaxWidthことでしたが、 'sプロパティは。ではないため、これも機能しません。これが私のコードです:ColumnDefinitionActualWidthColumnDefinitionActualWidthDependencyProperty

<ScrollViewer VerticalScrollBarVisibility="Auto" HorizontalScrollBarVisibility="Auto">
        <Grid>
            <Grid.ColumnDefinitions>
                <ColumnDefinition Width="Auto" />
                <ColumnDefinition Width="*" />
            </Grid.ColumnDefinitions>
            <TextBlock Grid.Row="0" Grid.Column="0" Text="Name:" Margin="5" />
            <TextBox MinWidth="200" Grid.Row="0" Grid.Column="1" TextWrapping="Wrap" AcceptsReturn="True" Margin="5"/>
        </Grid>
    </ScrollViewer>

任意のアイデアをいただければ幸いです。

4

1 に答える 1

2

これを試して:

<Grid>
    <Grid.ColumnDefinitions>
        <ColumnDefinition Width="Auto" />
        <ColumnDefinition Width="*" />
    </Grid.ColumnDefinitions>
    <TextBlock Text="Name:" Margin="5" />
    <ScrollViewer VerticalScrollBarVisibility="Auto" HorizontalScrollBarVisibility="Auto" Grid.Column="1">
        <TextBox MinWidth="200" TextWrapping="Wrap" AcceptsReturn="True" Margin="5" MaxWidth="{Binding Path=ActualWidth, RelativeSource={RelativeSource AncestorType={x:Type ScrollViewer}}}" />
    </ScrollViewer>
</Grid>
于 2012-09-14T06:57:42.517 に答える