WPF «экземпляры» выживают за занавескойC#

Место общения программистов C#
Ответить
Anonymous
 WPF «экземпляры» выживают за занавеской

Сообщение Anonymous »

У меня есть подкласс WPF. Окно содержит элементы Control, чьи элементы инициализируются в конструкторе подкласса окна. Окно отображается с использованием showdialog (), в новом экземпляре каждый раз. случается все время, хотя. Иногда getEnumerator () фактически вызывается. Если я каждый раз назначаю новый Ienumerable ItemsSource, всегда называется GetEnumerator. class = "lang-xml prettyprint-override">

Код: Выделить всё













< /code>
code-behind: < /p>
    public partial class SystemInfoWindow : Window
{
public SystemInfoWindow(IEnumerable maintenanceInfos)
{
InitializeComponent();

System.Diagnostics.Debug.WriteLine("ItemsControl instance={0}", System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(MaintenanceInfos));
System.Diagnostics.Debug.Assert(null == MaintenanceInfos.ItemsSource);

MaintenanceInfos.ItemsSource = maintenanceInfos;
}
}
< /code>
код для показа диалога: < /p>
    private void ShowSysInfo_Click(Object sender, RoutedEventArgs args)
{
var dlg = new SystemInfoWindow(facade.MaintenanceInfos);
dlg.Owner = Window.GetWindow(this);
dlg.ShowDialog();
}
< /code>
facade.MaintenanceInfos
- это свойство, которое всегда возвращает один и тот же туалетный экземпляр.


Подробнее здесь: https://stackoverflow.com/questions/337 ... he-curtain
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»