我創建的類和我要使用的類RTB()的構造,如何將構造函數類型轉換爲'System.Windows.UIElement'(blockUIContainer)?
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」
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;
}
我試圖用投它,並用「爲」,如下圖所示,但它確實不行。我想我可能需要正確的類型來完成這個任務,我該怎麼做?
newBUC.Child = newnew as BlockUIContainer;
newBUC.Child = (BlockUIContainer) newnew;
Rtb應該從'UIElement'繼承 – Alberto
問題是你在這裏真的想做什麼,爲什麼你不在適當的XAML中而是在程序代碼中去做。 WPF不會那樣工作。 –