2011-12-23 37 views
2

我想在xaml中創建2個獨立的窗口,我想從代碼部分單獨控制它們。你有什麼想法如何做到這一點?如果您可以提供一些代碼示例,我將不勝感激。如何使用C#在WPF中創建2個獨立的窗口#

謝謝你從現在開始......

+2

您是否嘗試過谷歌搜索..境內唯一的訪問?在google中輸入相同的問題並查看結果以及許多示例。 – MethodMan 2011-12-23 14:11:33

+0

爲什麼不簡單地製作兩個窗口?他們必須在同一個XAML文件中嗎?如果是這樣,爲什麼? – 2011-12-23 14:11:52

+0

我試過谷歌搜索。但它給了我這樣的結果:一個大的主窗口,以及窗口內的一個小窗口。我想嘗試的是在不同的位置單獨控制它們。不在一個窗口內... @Martin:他們不必在同一個XAML文件中,但他們必須從一個代碼控制。 – Samet 2011-12-23 15:41:44

回答

5

添加第二個Window(第一個是MainWindow.xaml)在項目中(右鍵點擊你的項目 - >添加 - >窗口)。我們稱之爲BobbyWindow。

在MainWindow.xaml.cs的構造函數,調用:

BobbyWindow bWin = new BobbyWindow(); 
bwin.Owner = this; 
bWin.Show(); 

瞧。

編輯:額外信息,以反映意見

這之間的主要區別:

public MainWindow() 
{ 
    InitializeComponent(); 
    Window1 bWin = new Window1(); 
    bWin.Owner = this; 
    bWin.Show(); 
} 

這:

Window1 bWin = new Window1(); 

public MainWindow() 
    { 
     InitializeComponent(); 

     bWin.Owner = this; 
     bWin.Show(); 
    } 

的是,在第一種情況下, bWin是本地到MainWindow的() con這意味着它只存在於MainWindow()的括號內。
第二種情況,bwin的是本地類,這意味着它是從主窗口

+0

對不起,我在另一個窗口使用「this」。我試圖給另一個名字打電話,但它沒有工作。我不擅長這個話題。如果你向我解釋寫什麼,我將不勝感激。 謝謝... – Samet 2012-01-02 12:45:59

+0

「this」指的是當前對象。根據你寫的「this」它指向不同的對象。 – 2012-01-02 13:00:13

+0

我有一個主窗口和你的窗戶。通過使用「this」,我用主窗口做了很多事情。所以,我必須使用別的東西才能到達你的窗口。我的意思是我不能這樣做:BobbyWindow.Visibility = ....它不接受這個。我使用this.Visibility爲主窗口。我怎樣才能打電話給你的窗口來達到它? – Samet 2012-01-02 16:37:46

相關問題