标签: textblock

WPF TextBlock:如何均匀分隔显示的字符?

我需要显示一个字符串,每个x像素显示一个字符.(x是整个字符串).

例如:"你好" - >位置(像素)0处的H,位置50处的e,100处的l,150处的1,以及200处的o.

当然我可以为每个角色使用TextBlock,但它似乎有点过分.

TranslateTransform似乎没有做到这一点:它相对于前一个角色的END偏移我的角色,这不是我想要的.

TIA的帮助.

wpf textblock

4
推荐指数
1
解决办法
2399
查看次数

WPF将TextBlock绑定到Window的标题

我的主窗口上有一个TextBlock.我想将它的文本绑定到窗口的标题上..例如:myWindow.Title.

这一直困扰着我,我已经用Google搜索过去了,任何帮助都表示赞赏.

谢谢.

vb.net wpf binding textblock title

4
推荐指数
1
解决办法
4283
查看次数

WPF文本块灰色文本

我想在WPF文本块中灰显文本.我怎么做到的?

问候Raju

wpf textblock

4
推荐指数
4
解决办法
1万
查看次数

在WPF中如何在代码中更改DataTemplate的Textblock的文本绑定?

我有一个ListBox,其ItemsSource绑定到一个对象列表.Listbox有一个ItemTemplate,其中包含一个包含TextBlock的DataTemplate.文本块的Text绑定到对象的Name属性(即Text ="{Binding Name}").

我想提供一个单选按钮来显示同一列表的不同视图.例如,允许用户在Name属性和ID属性之间切换.

我在2381740找到了一个SO答案,但我也在数据模板中设置了边框和文本框样式(参见下面的代码).

反正只是重置Textblock绑定?我不想重新创建整个datatemplate.实际上我甚至不确定如何做到这一点,是否有一种简单的方法将xaml转换为代码?

谢谢科迪

<DataTemplate>
  <Border Margin="0 0 2 2"
          BorderBrush="Black"
          BorderThickness="3"
          CornerRadius="4"
          Padding="3">
      <TextBlock Style="{StaticResource listBoxItemStyle}"
                 Text="{Binding Name}" />
  </Border>
</DataTemplate>
Run Code Online (Sandbox Code Playgroud)

wpf binding textblock datatemplate

4
推荐指数
2
解决办法
1万
查看次数

突出显示搜索TextBlock

我的目标是创建一个具有新依赖项属性SearchText的自定义TextBlock控件.此属性将包含正则表达式.将使用自定义样式(另一个DP)突出显示TextBlock文本中所有出现的此正则表达式.

我当前的实现涉及清除TextBlock的InlineCollection中的所有Inline对象.然后我使用未突出显示的文本运行TextBlock并运行应用了样式的突出显示文本(此方法不支持直接向TextBlock添加内联,而是必须使用TextBlock.TextProperty).

工作得很好,但有时我在尝试清除Inlines时遇到一个奇怪的异常:InvalidOperationException:"此时无法修改此节点的逻辑子节点,因为正在进行树步行."

这个问题似乎是与一个.我正在修改TextChanged函数中的内联,但我使用一个标志来避免无限递归编辑.

有关如何构建此自定义控件的任何想法?有一个更好的方法吗?我该如何解决这个异常?

谢谢!

wpf textblock custom-controls invalidoperationexception inlines

4
推荐指数
2
解决办法
2162
查看次数

文本块中裁剪的长文本

我有一个问题.我有一个文本块,我的文字被裁剪了.它似乎只出现在文本太长导致文本较短时才出现,没有问题.

所以有我的代码:

<Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0">
    <Grid.RowDefinitions>
        <RowDefinition Height="150" />
        <RowDefinition Height="447*" />
    </Grid.RowDefinitions>
        <Image Grid.Row="0" Source="{Binding TheContent.PathPicture}" />
        <ScrollViewer Grid.Row="1">
            <Grid>
                <TextBlock Text="{Binding TheContent.Text}" TextWrapping="Wrap" FontSize="24" />
            </Grid>
        </ScrollViewer>
</Grid>
Run Code Online (Sandbox Code Playgroud)

文字正如这样裁剪:

在此输入图像描述

是汇总我内容的唯一解决方案吗?

xaml textblock windows-phone-7

4
推荐指数
1
解决办法
3270
查看次数

WPF Textblock性能差

在显示甚至少量数据时,我一直遇到WPF DataGrid和列表框GridView性能问题.我虽然这个问题只是WPF一般表现不佳,但问题似乎只在于文本块控件.

我创建了一个示例面板,我添加了几个项目.如果我添加简单填充的矩形,调整大小/滚动性能是完美的,但是一旦我使用了文本块,性能就会消失.

看起来性能问题来自于:

child.Measure(constraint); 
Run Code Online (Sandbox Code Playgroud)

当测量文本块时,它会使性能停止.有什么我可以覆盖文本块的测量或某些东西来提高性能吗?(我会明确设置孩子的大小)

编辑:我现在已经创建了简化的代码来安排我想要的项目.

此代码的性能很好,除了...当文本块内的文本宽度超过文本块的实际宽度时.这使我的表现回归到爬行 - 可能是因为它试图再次测量元素?

 public class TestPanel : Panel
{
    private int _rowHeight = 20;
    private int _columnWidth = 50;

    public TestPanel()
    {

        for (int i = 0; i < 100; i++)
        {

            for (int j = 0; j < 20; j++)
            {
                TextBlock cell = new TextBlock();
                cell.ClipToBounds = true;
                cell.Width = _columnWidth;
                cell.Height = _rowHeight;
                cell.Text = i.ToString() + ":" + j.ToString();
                this.Children.Add(cell);
            }
        }
    }

    protected override Size MeasureOverride(Size constraint) …
Run Code Online (Sandbox Code Playgroud)

wpf performance panel textblock

4
推荐指数
1
解决办法
2901
查看次数

从cs更改TextBlock颜色(Windows Phone 7)

我是Windows Phone 7的全新开发人员.我TextBlock Text="{Binding MyDate}在MainPage.xaml页面上.

如何从MainPage.xaml.cs更改此TextBlock的颜色?

silverlight textblock windows-phone-7

4
推荐指数
1
解决办法
1万
查看次数

TextBlock滚动在WPF中不起作用

我想让我的TextBlock可滚动,但我不能让它工作.也许问题在于StackPanel

所以这是代码:

 <Grid Margin="3">
        <Grid.RowDefinitions>
            <RowDefinition Height="152*" />
            <RowDefinition Height="86*" />
            <RowDefinition Height="67*" />
        </Grid.RowDefinitions>

        <ListBox x:Name="lstItems" Margin="3,6,3,0" ItemsSource="{Binding Source={StaticResource rssData}}"
                 SelectedIndex="0">
            <ListBox.ItemTemplate>
                <DataTemplate>
                    <StackPanel Orientation="Horizontal">
                        <Image Width="20" Margin="3" Source="{Binding XPath=enclosure/@url}" />
                        <TextBlock Margin="3" VerticalAlignment="Center" Text="{Binding XPath=title}" FontWeight="Bold" />
                    </StackPanel>
                </DataTemplate>
            </ListBox.ItemTemplate>
        </ListBox>

        <StackPanel Grid.Row="1" Orientation="Vertical" DataContext="{Binding ElementName=lstItems, Path=SelectedItem}" Grid.RowSpan="2">
            <StackPanel.ScrollOwner>
                <ScrollViewer />
            </StackPanel.ScrollOwner>
            <TextBlock Margin="3" FontSize="13" FontWeight="Bold" Text="{Binding XPath=title, Path=InnerText}" />
            <TextBlock Margin="3" Opacity="0.72" Text="{Binding XPath=pubDate}" />
            <ScrollViewer>
                <TextBlock ScrollViewer.CanContentScroll="True" ScrollViewer.HorizontalScrollBarVisibility="Disabled" ScrollViewer.VerticalScrollBarVisibility="Auto" Margin="3" FontStyle="Italic" Text="{Binding …
Run Code Online (Sandbox Code Playgroud)

c# wpf textblock

4
推荐指数
1
解决办法
8709
查看次数

TextBlock:Text和StringFormat的绑定

是否有可能结合TextStringFormat吗?

<TextBlock Text="{Binding Path=Price, StringFormat={Binding Path=DecimalPoints}}" />
Run Code Online (Sandbox Code Playgroud)

DecimalPoints不断变化F0F15.不幸的是,上面的代码无法编译.

wpf xaml binding textblock string-formatting

4
推荐指数
2
解决办法
9398
查看次数