<DataTemplate x:Key="myContinuousTemplate">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="Auto" MaxWidth="300"/>
<ColumnDefinition Width="20" />
</Grid.ColumnDefinitions>
<messenger:BindableRichTextBox Grid.Column="1"
MaxWidth="300"
Style="{StaticResource richTextBoxStyle}" TextChanged="BindableRichTextBox_TextChanged">
<messenger:BindableRichTextBox.Document>
<MultiBinding Converter="{StaticResource searchTextHighlightConverter}">
<Binding RelativeSource="{RelativeSource Self}" Mode="OneTime"/>
<Binding Path="message" />
<Binding Path="message_sn" />
<Binding Mode="TwoWay" ElementName="conversationControl" Path="SearchText" />
<Binding Mode="TwoWay" ElementName="conversationControl" Path="MatchedMessageSN" />
</MultiBinding>
</messenger:BindableRichTextBox.Document>
</messenger:BindableRichTextBox>
</DataTemplate>
正在实施消息。 我想获取数据模板的richtextbox属性。
最终目标是通过输入的字符更改richbox的长度。
例如,就像Facebook Messenger一样,我希望延伸到字母的长度,但是当它达到最大长度时,我想垂直拉伸它。
答案 0 :(得分:0)
将HorizontalAlignment和VerticalAlignment设置为Stretch以外的值(默认值)。这将使TextBox缩小以适合其内容。希望它会有所帮助
答案 1 :(得分:0)
尝试将您的richtexbox放在stackpanel中,我尝试使用代码,并按照您的要求进行操作:
<StackPanel>
<RichTextBox/>
<RichTextBox/>
<RichTextBox/>
<RichTextBox/>
<RichTextBox/>
<RichTextBox/>
</StackPanel>
您想要获得的行为是标准行为。检查您的richtextbox的样式可能存在一些错误。