Beispiel #1
0
        // [SalesOrder 一覧] ウィンドウ -> 新しい受注...
        void NewSalesOrderCommand(object sender, ExecutedRoutedEventArgs e)
        {
            // 気にせずどんどん開く。
            var dialog = new SalesOrderEditWindow(0, OnSalesOrderChanged);

            dialog.Show();
        }
Beispiel #2
0
        // [SalesOrder 一覧] ウィンドウ -> 受注の詳細...
        void SalesOrderDetailExecuted(object sender, ExecutedRoutedEventArgs args)
        {
            // ただ一つの編集ウィンドウを表示する、という挙動のほうが簡単。
            // ここでは, ウィンドウをリサイクルする例.
            int id = ((SalesOrder)args.Parameter).Id;

            if (soEditWindows.ContainsKey(id))
            {
                soEditWindows[id].Focus();
            }
            else
            {
                var dialog = new SalesOrderEditWindow(id, OnSalesOrderChanged);
                soEditWindows.Add(id, dialog);
                dialog.Closed += (s, e) => { soEditWindows.Remove(id); };
                dialog.Show();
            }
        }