我想在RichTextBox的每一行上放置控件 - 类似的东西:
---------------------------------
| Control1 | This is a multiline|
| Control2 | Richtextbox and I |
| Control3 | want to place a |
| Control4 | control excactly |
| Control5 | beside each line. |
---------------------------------
所以我想在每行的左边放置一个Control。我想我必须找出每条线的实际高度并相应地放置控件。我怎样才能做到这一点?
答案 0 :(得分:0)
以下代码将满足您的需求。如果不能解决,请检查并告诉我。
<RichTextBox >
<RichTextBox.Template>
<ControlTemplate>
<StackPanel>
<TextBlock Text="My Text on test" />
<TextBlock Text="My Text on test1" />
</StackPanel>
</ControlTemplate>
</RichTextBox.Template>
</RichTextBox>
我说过要使用richtextbox控件模板来实现你的需求。在控件模板内部,您可以设计控件,无论它们应该是什么。我在Stackpanel中放置了两个文本框的示例。根据您的要求,如果我的猜测有效,以下更新的解决方案将为您提供帮助。
<RichTextBox >
<RichTextBox.Template>
<ControlTemplate>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="60"></ColumnDefinition>
<ColumnDefinition Width="100"></ColumnDefinition>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition></RowDefinition>
</Grid.RowDefinitions>
<StackPanel Grid.Column="0" Grid.Row="0">
<Button Content="Control1" Width="60"/>
<Button Content="Control2" Width="60"/>
<Button Content="Control3" Width="60"/>
<Button Content="Control4" Width="60"/>
</StackPanel>
<TextBlock Grid.Column="1" Grid.Row="0" TextWrapping="Wrap" FontSize="13" Text="This is a multiline Richtextbox and I want to place a control excactly beside each line. " />
</Grid>
</ControlTemplate>
</RichTextBox.Template>
</RichTextBox>