Ho un applicazione WPF con questi tre tipi di cose ...WPF: Come si imposta la finestra Proprietario di una finestra mostrata da un controllo utente?
- WindowMain
- UserControlZack
- WindowModal
UserControlZack1 siede sul mio WindowMain ...
<Window x:Class="WindowMain"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:ProjectName"
...
Name="WindowMain">
<Grid>
...
<local:UserControlZack x:Name="UserControlZack1" ... />
...
</Grid>
</Window>
UserControlZack1 visualizza un box dailog WindowModal ...
Partial Public Class UserControlZack ... Private Sub SomeButton_Click(...) 'instantiate the dialog box and open modally... Dim box As WindowModal = New WindowModal() box.Owner = ????? box.ShowDialog() 'process data entered by user if dialog box is accepted... If (box.DialogResult.GetValueOrDefault = True) Then _SomeVar = box.SomeVar ... End If End Sub End Class
Come si imposta box.Owner sulla finestra corretta, la mia istanza in esecuzione di WindowMain?
Non riesco a utilizzare box.Owner = Me.Owner
, perché "Proprietario" non è un membro di "ProjectName.UserControlZack". "
Non riesco a utilizzare box.Owner = Me.Parent
perché restituisce una griglia, non la finestra.
Non riesco a utilizzare box.Owner = WindowMain
, perché "'WindowMain' è un tipo e non può essere utilizzato come espressione."
Probabilmente è stata presentata una risposta corretta e accettabile. Basandosi esclusivamente sui voti, probabilmente Martin dovrebbe essere accettato. – Emyr