這可能是個愚蠢的問題,但我無法弄清楚如何做到這一點。我有一個名爲「ReportUserControl」的UserControl,裏面有一個名爲「ReportGrid」的網格。我想從ReportUserControl子項中刪除ReportGrid。我試過這個:如何從UserControl中刪除子項?
ReportUserControl control = new ReportUserControl();
control.Children.Remove(...);
問題是UserControl沒有.Children.Remove()選項。我如何管理這個?
UPDATE
我要「送」這個網到另一個類,並使用它。問題是,當我發送網格並嘗試在另一個類中使用它時,我得到這一點:「指定的元素已經是另一個元素的邏輯子元素,請先斷開它。」所以我必須從我的UserControl中刪除它,但不知道如何。
ReportUserControl XAML:
<UserControl x:Class="WPFReportTest.ReportUserControl "
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
mc:Ignorable="d"
Height="29.7cm" Width="21cm">
<Grid Name="ReportGrid">
****GridContent***
</Grid>
</UserControl>
ReportClass:
public class ReportingClass
{
Grid reportGrid;
public ReportingClass(Grid tempGrid)
{
reportGrid = tempGrid;
}
public Page SetPageContent()
{
Page page = new Page();
page.Content = reportGrid;
}
}
InstanceWindow
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
ReportUserControl userControl = new ReportUserControl();
ReportingClass report = new ReportingClass(userControl.ReportGrid);
}
}
這是不是完整的代碼只是小部分知道我想要管理的東西。 Line「page.Content = reportGrid;」是發生異常的地方。
ReportUserControl繼承自什麼? –
ReportUserControl:UserControl – Stojdza
你爲什麼要這麼做?您應該使用正確的DataBinding。 –