在我的C#WPF項目(使用VS2012工作),我的目標是在我創建了一個新的窗口中使用從一個類的現有數據...使用元素在新窗口中
所以我增加了一個新的窗口(WPF)到我的項目並稱之爲DijkstraWindow。在我的MainWindow中有一個Menu,當你點擊合適的項目時,DijkstraWindow被打開。在我MainWindow.xaml.cs這是做到這一點的代碼:
private void Dijkstra_Click(object sender, RoutedEventArgs e)
{
var DWindow = new DijkstraWindow();
DWindow.Show();
}
現在我需要訪問數據(這是應用程序運行時創建),並將其存儲在存儲在一個列表類。但我不知道如何做到這一點。
我試過如下:
1.
在DijkstraWindow創建新的對象:
var mwvm = new MainWindowViewModel();
的數據是可訪問的(在我的新DijkstraWindow),但它只是需要的數據,在啓動應用程序時被初始化。所以這是錯誤的。因爲在應用程序運行時有一些填充的列表。我想在我的新窗口中使用這些數據。
2.
在我DijkstraWindow.xaml.cs我試圖從那裏我的數據是類繼承,但隨後的編譯器是抱怨
「分部聲明一定不能指定不同的基類」
所以我看你也改變了你的XAML文件,所以它改爲:
<local:MainWindowViewModel x:Class="Graphomat.DijkstraWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:Graphomat"
Title="DijkstraWindow" Height="300" Width="300">
<Grid/>
</local:MainWindowViewModel>
這也不能正常工作,那麼我的DijkstraWindo w沒有關於show方法的信息?
請問有人能幫我解決這個問題嗎?
謝謝!
編輯
這裏北京時間類聲明:
*/using somestuff */
namespace Graphomat
{
/// <summary>
/// Interaction logic for DijkstraWindow.xaml
/// </summary>
public partial class DijkstraWindow : MainWindowViewModel
{
public DijkstraWindow()
{
InitializeComponent();
}
private void Button_Click(object sender, RoutedEventArgs e)
{
}
}
}
試圖從類 「MainWindowViewModel」 繼承,但這並不因爲XAML文件工作..
感謝您的詳細評論。認爲這樣做會更容易。在閱讀教程時,似乎有必要重構我的完整應用程序。目前我不確定我的視圖,模型或模型視圖是什麼,我的代碼與所有內容混雜在一起... – mho