我有这个XAML:
<TextBlock TextWrapping="Wrap" Foreground="Green"
Text="This is some Green text up front. ">
<TextBlock Foreground="Blue">
This is some Blue text.
</TextBlock>
This is some Green text following the Blue text.
<Hyperlink>
<TextBlock Text="And finally, this is a Hyperlink." TextWrapping="Wrap"/>
</Hyperlink>
</TextBlock>
Run Code Online (Sandbox Code Playgroud)
我想知道如何在C#中以程序方式复制它.
我知道如何使用以下内容TextBlock
在C#中创建s:
TextBlock tb = new TextBlock();
tb.Text="Some text"
Run Code Online (Sandbox Code Playgroud)
我可以TextBlock
在C#中的一个面板中放置多个s.但我不看你怎么去把TextBlock
s转换其他TextBlock
s和TextBlock
s转换Hyperlink
s转换TextBlock
秒.
某些容器对象和额外TextBlock
对象是否会自动创建?或者是否TextBlock
有一些方法/属性允许它包含其他项目?
其他相关问题:
1.将Click()事件添加到Hyperlink
?的最佳方法是什么?
2.有没有办法让蓝色文字更干净地包裹?在上面的XAML中,只要最右边的单词需要换行,就会包裹整个蓝色文本块.
感谢您提供的任何照明.
我的TextBlock有50x50像素来显示文本,但是如果有更多文本,我希望用户能够滚动.此控件是否有自动滚动功能?
我应该使用更适合此任务的不同控件吗?
这里有几个图片来说明问题:
这个工作正常,因为文本适合:
这个似乎不正确.文字被切断了.
有没有办法只在TextBlock(或任何小于整个块的数量)中对一个字符应用下划线文本修饰?
我有一些文字,我想输出"这是WORF名称拼写",并有f
在worf
下划线.
我知道你可以这样做:
TextBlock47.TextDecorations = TextDecorations.Underline;
Run Code Online (Sandbox Code Playgroud)
但我不希望整个区块加下划线.
如果失败了,除了TextBlock之外还有其他控件可以使用它来提供这种功能吗?我已经研究过富文本,但对于一个简单的效果来说,这似乎是一项非常重要的工作.如果这是唯一的方法,我如何在c#代码中生成特定格式的文本(10pt,Courier New,带下划线的一个字符)?
我有一个ListBox
已经StackPanel
的控股一个TextBlock
和Image
水平,其次是ContentPresenter
.这就是XAML的样子:
<Grid x:Name="ContentPanel"
Grid.Row="1"
Margin="12,0,12,0">
<ListBox x:Name="MainListBox"
Margin="12,0,12,0"
SelectionChanged="MainListBox_SelectionChanged">
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel>
<toolkit:ContextMenuService.ContextMenu>
<toolkit:ContextMenu x:Name="ContextMenu"
Opened="ContextMenu_Opened">
<toolkit:MenuItem Header="edit"
Tag="edit"
Click="MenuItem_Click" />
<toolkit:MenuItem Header="delete"
Tag="delete"
Click="MenuItem_Click" />
</toolkit:ContextMenu>
</toolkit:ContextMenuService.ContextMenu>
<StackPanel Orientation="Horizontal"
HorizontalAlignment="Left">
<!-- **** This text won't wrap **** -->
<TextBlock Text="{Binding Header}"
TextWrapping="Wrap"
Style="{StaticResource PhoneTextNormalStyle}"
Foreground="{StaticResource PhoneAccentBrush}" />
<Image Source="/image.png"
Visibility="{Binding ImageVisibility}" />
</StackPanel>
<ContentPresenter Content="{Binding Content}"
HorizontalAlignment="Stretch" />
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
<ListBox.ItemContainerStyle>
<Style TargetType="ListBoxItem">
<Setter Property="HorizontalContentAlignment"
Value="Stretch" />
</Style> …
Run Code Online (Sandbox Code Playgroud) 我在Silverlight 4中使用TextBlock绑定获得了一些乐趣.
我有以下情况:
<TextBlock Text="{Binding Date, StringFormat=g}" />
<TextBlock>
<Run Text="{Binding Date, StringFormat=g}"/>
<TextBlock>
Run Code Online (Sandbox Code Playgroud)
Date
类型属性在哪里System.DateTime
.
我没有改变应用程序的当前文化.
我的机器文化是保加利亚(bg-BG).例如:
TextBlock 1:11/16/2011 12:49 PM
TextBlock 2:16.11.2011г.12:49ч.
有趣的是,第一个TextBlock
使用en-Us文化(或默认不变的文本)格式化日期和时间,而第二个使用bg-BG文化.自从Silverlight TextBlock控件的MSDN文档说:
如果从XAML创建InlineCollection作为TextBlock对象元素的内部文本,或者通过设置Text属性创建它,则InlineCollection包含一个包含该文本的Run.
我在这里遗漏了什么,或者它可以被认为是Silverlight 4中的错误?
我有一些带有工具提示的TextBlocks,我想在工具提示中添加一个图像(这意味着,我想要提供带有文本和图像的工具提示).
有谁知道我怎么能以简单的方式做到这一点?
非常感谢!
我有文本块"text2":
<TextBlock >Area(km2)</TextBlock>
Run Code Online (Sandbox Code Playgroud)
如何使"2"小而且更高的这种指数我需要在图片上查看:
我有一个文本文件,其中包含大致格式如下的文本块:
Beginning of block
...
...
...
.........some_pattern.......
...
...
End of block
Beginning of block
...
... etc.
Run Code Online (Sandbox Code Playgroud)
这些块可以有任意数量的行,但始终以两个分隔符开头.我想做的是匹配"some_pattern"并将整个块打印到stdout.通过上面的例子,我只会得到这个:
Beginning of block
...
...
...
.........some_pattern.......
...
...
End of block
Run Code Online (Sandbox Code Playgroud)
我试过这样的事但没有成功:
grep "Beginning of block\n.*some_pattern.*\n.*End of block"
Run Code Online (Sandbox Code Playgroud)
知道怎么用grep做这个吗?(或者可能使用其他工具)
我需要按照下图所示的方向编写文本.事实是我在这里看到一些例子,使用文本块并使用"RenderTransform"旋转控件的角度,但这不是我真正需要的.我尝试使用图像来做它但它不太合适...所以我真的不知道如何解决它.如果您查看旁边的图像,您可以看到文本是从下到上书写的,文本下方的行位于屏幕右侧.这是我需要开发的屏幕:
我尝试旋转文本块,但它对我有用的唯一方法是包装文本,但这只是我找到的"最接近"的解决方案.另外,如您所见,我需要为文本块设置边框.
无论如何,我希望你能帮助我,因为周围的任何例子都符合我的问题.
高朗高朗高朗高朗高朗高朗高朗高朗高朗高朗高朗
我正在WPF中创建文本行情自动收录器。我可以将文本永久地从右向左移动,但是我的问题是,我想无缝地移动相同的文本以产生上述效果(就像股票交易报价器一样)。上面的文字必须永无止境地移动。
我该如何实现?