【发布时间】:2011-01-01 00:09:25
【问题描述】:
如何将 WPF TextBlock 绑定到文本文件?我想让 TextBlock 显示文件的内容。
【问题讨论】:
标签: wpf data-binding text-files textblock
如何将 WPF TextBlock 绑定到文本文件?我想让 TextBlock 显示文件的内容。
【问题讨论】:
标签: wpf data-binding text-files textblock
您需要将文件读入内存中的字符串并改为绑定到该字符串。
查看模型:
class ViewModel
{
public string FileText { get; set; }
public void ReadFile(string path)
{
FileText = File.ReadAllText(path);
}
}
XAML:
<TextBlock Text="{Binding FileText}"/>
【讨论】:
如果您希望将文本格式化为我的内联标记,您可以查看我创建的 TextBlock 的子类here。在 xaml 标记字符串和 InlineCollection(实际上是内联的通用列表)之间也有一个转换器。
【讨论】:
This post 描述了一个自定义标记扩展,一旦定义,您就可以通过 XAML 包含文件的内容:
<Window
x:Class="WPF.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:wpf="clr-namespace:WPF">
<TextBlock Text="{wpf:Text 'Assets/Data.txt'}" />
</Window>
【讨论】: