我在资源中有以下xaml代码:
<DataTemplate DataType="{x:Type s:Substance}">
<StackPanel Orientation="Horizontal">
<TextBlock Text="{Binding Name, Mode=TwoWay}" MinWidth="50" MinHeight="20" Background="Blue"/>
<TextBox Text="{Binding Count, Converter={StaticResource stringToIntConverter}, Mode=TwoWay}" MinWidth="50" MinHeight="20" Background="Yellow"/>
</StackPanel>
</DataTemplate>
Substance
来自ContentControl
:
public partial class Substance : ContentControl
{
string name; public int count; SymbolTable symTable = null;
public Substance(string _name, int _count, SymbolTable _symTable)
{
symTable = _symTable; Name = _name; Count = _count;
}
}
Name
和Count
是在另一个部分类定义中定义的DP。
当我在StackPanel
或ListBox
中添加一种物质时,无法显示任何内容:
Substance s = new Substance("newSub", 100, symTable);
substancePanel.Children.Add(s);
谁能告诉我我做错了什么。任何帮助将不胜感激。
答案 0 :(得分:2)
我不是告诉你不要让Substance
从UI相关类继承吗?
如果你忽略DataTemplates
将不会被应用(取决于预期的类型),但更糟糕的是你打破了模型 - 视图 - 分离。