0
直覺告訴我這是一個糟糕的主意......但是,我正在嘗試向MainWindow
的成員添加一些子對象。以便MainWindow
可以稍後使用這些成員。我無法將MainWindow
對象傳遞給我的應用程序中的每種方法,所以這是另一種方法。我可能會讓MainWindow
類的具體成員變成靜態全局變量,但是我想在此問一下......將MainWindow聲明爲全局靜態變量的危險
這樣做的危險是什麼?有沒有?這是不好的做法嗎?爲什麼?
namespace MyApp
{
/// <summary>
/// Interaction logic for MainWindow.xaml
/// </summary>
public partial class MainWindow : Window
{
Globals.Variables.MainClass = this;
}
}
Globals類:
namespace MyApp.Globals
{
class Variables
{
public static MainWindow MainClass = null;
}
}
您可以詳細說明您需要添加到主窗口的成員嗎?瞭解你正在嘗試解決的實際問題可能會幫助我們給你更好的想法/選擇。 – Pete
嗯,這實際上可以解決我的問題......哪些是發送狀態消息列表。其中許多可能來自「背景工作者」。如果存在危險,或者如果將主窗口設置爲應用程序的其餘部分公開可用的靜態類,這是一個不好的做法。 – teynon
Perhpas是其他設計選擇的最後選擇。此外,你不需要在另一個類中創建靜態,只需在類MainWindows上聲明它:Window {public static MainWindow Instance {get;私人設置; }並在構造函數中設置實例。 – kenny