void scriptitem_Click(object sender, RoutedEventArgs e) { var menuitem = e.Source as MenuItem; EngineManagerViewModel view = (this.DataContext as EngineManagerViewModel); e.Handled = true; if (view.SelectedGameObjects.Count == 0) { return; } string scriptname = menuitem.DataContext as String; EditorSubsystemManaged.getInstance().QueueAction(() => { foreach (GameObject g in view.SelectedGameObjects) { CScript cs = CastingHelper.CastTo <CScript>(g.RequireComponentByName("CScript")); cs.scriptAsset = AssetManager.getInstance().GetAsset(scriptname); } Dispatcher.BeginInvoke(new Action(() => { ComponentListViewControl.GetBindingExpression(ListView.ItemsSourceProperty).UpdateTarget(); })); }); }
void menu_item_Click(object sender, RoutedEventArgs e) { var menuitem = e.Source as MenuItem; EngineManagerViewModel view = (this.DataContext as EngineManagerViewModel); e.Handled = true; if (view.SelectedGameObjects.Count == 0) { return; } string compname = menuitem.DataContext as String; EditorSubsystemManaged.getInstance().QueueAction(() => { foreach (GameObject g in view.SelectedGameObjects) { g.RequireComponentByName(compname); } Dispatcher.Invoke(() => { ComponentListViewControl.GetBindingExpression(ListView.ItemsSourceProperty).UpdateTarget(); }); }); }