我创建了一个类,我想使用类Rtb(),
的构造函数public class Rtb
{
public RichTextBox newRTB;
public Rtb()
{
newRTB = new RichTextBox();
newRTB.IsReadOnly = true;
newRTB.MouseDoubleClick += new MouseButtonEventHandler(newRTB_MouseDoubleClick);
}
private void newRTB_MouseDoubleClick(object sender, MouseButtonEventArgs e)
{
.....
}
}
在下面的代码中,我创建了一个Rtb()对象,但此对象无法分配给newBUC.Child,运行后出错:无法将类型'WpfApplication1.Rtb'隐式转换为'System.Windows.UIElement'< / p>
private void menu_Click(object sender, RoutedEventArgs e)
{
BlockUIContainer newBUC = new BlockUIContainer();
newBUC.Margin = new Thickness(50, 10, 50, 10);
mainMenu.Document.Blocks.Add(newBUC);
Rtb newnew = new Rtb();
newBUC.Child = newnew;
}
我尝试使用它来投射,并使用“as”,如下所示,但它没有用。我想我可能需要正确的类型来完成作业,我该怎么办?
newBUC.Child = newnew as BlockUIContainer;
newBUC.Child = (BlockUIContainer) newnew;
答案 0 :(得分:1)
您无法将 newnew 添加为Child,因为您的类不会继承自 UIElement 。但你能做什么是将Child设置为名为 newRTB 的基础RichTextBox,它继承自UIElement
newBUC.Child = newnew.newRTB;
答案 1 :(得分:0)
在我的情况下,我错过了对PresentationFramework.dll的引用 位于程序文件* x86(参考汇编¥Microsoft \ FRamewrk \ 3.0 \ 或你的FRamework版本
这让我可以访问我的XAML Partial类上的所有依赖项,因此能够解析
我希望这对你的编码也有帮助,对我有用。