Как использовать сетку в главном окне XAML для другого класса в WPF? - PullRequest
0 голосов
/ 16 мая 2018

В коде основного окна проекта WPF на странице XAML есть сетка с определенным именем, как показано ниже:

<Grid Grid.Row="2" x:Name="PnlGraphics" Margin="5"></Grid>

В другом классе (например, ClsChart) в функции мне нужно установить это значение сетки.

Вот фрагмент кода, который использует это имя сетки в классе clsChart:

PnlGraphics.Children.Add(host)

Я пробовал много вещей, как показано ниже, но моя проблема еще не решена.

1 - Я сделал объект из основного класса и попытался использовать его, чтобы получить доступ к имени сетки. Но на практике выдает ошибку при запуске программы!

Dim mainClass1 as new mainClass = new mainClass()
mainclass1.pnlGraphics.Children.Add(host)

2 - Я создал панель управления в классе ClsChart и попытался заполнить сетку в основном классе.

В классе clsChart:

 Private _panel1 As Panel
 Public Property Panel1 As Panel
    Get
        Return _panel1
    End Get
    Set(value As Panel)
        _panel1 = value
    End Set
 End Property
 Panel1.Children.Add(host)

и в основном:

ChartObject.Panel1 = PnlGraphics

3- Я изменил модификатор сетки на общедоступный.

Есть мысли по этому поводу?

1 Ответ

0 голосов
/ 16 мая 2018

Создание объекта clsChart в вашем основном классе и передача сетки в качестве параметра конструктору (например, clsChart c = new clsChart(grid)). В конструкторе вы присваиваете grid некоторой переменной-члену типа Grid и используете ее при необходимости.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...