/// <summary> /// The PortfolioTileSettingsWindow_Loaded initializes the listview_availableAssets. /// </summary> /// <param name="sender">The sender<see cref="object"/></param> /// <param name="e">The e<see cref="RoutedEventArgs"/></param> private void PortfolioTileSettingsWindow_Loaded(object sender, RoutedEventArgs e) { List <AssetTileData> assignedAssetTileDatas = this.appData.AssetTileDataSet .Where(ass => this.portfolioTileData.AssignedAssetTileIds.Contains(ass.AssetTileId)) .ToList(); this.Dispatcher.Invoke(() => { this.textBox_PortfolioName.Text = this.portfolioTileData.PortfolioTileName; assignedAssetTileDatas.ForEach(ass => { if (this.appData.AssetTileDataSet.Any(ast => ast.AssetTileId == ass.AssetTileId)) { AssetTileData temp = this.appData.AssetTileDataSet.Find(ast => ast.AssetTileId == ass.AssetTileId); int i = this.listView_availableAssets.Items.IndexOf(temp); this.listView_availableAssets.UpdateLayout(); this.listView_availableAssets.ScrollIntoView(this.listView_availableAssets.Items[i]); (this.listView_availableAssets.ItemContainerGenerator.ContainerFromIndex(i) as ListViewItem).IsSelected = true; } }); this.listView_availableAssets.Focus(); }); }
/// <summary> /// Initializes a new instance of the <see cref="AssetTileSettingsWindow"/> class. /// </summary> /// <param name="readyApis">The readyApis<see cref="Dictionary{IApi, List{Asset}}"/></param> /// <param name="assetTileData">The assetTileData<see cref="AssetTileData"/></param> public AssetTileSettingsWindow(Dictionary <IApi, List <Asset> > readyApis, AssetTileData assetTileData) { this.InitializeComponent(); this.assetTileData = assetTileData; this.readyApis = readyApis.OrderBy(r => r.Key.ApiInfo.ApiName).ToDictionary(pair => pair.Key, pair => pair.Value); this.DataContext = new AssetTileSettingsWindowViewModel { ReadyApis = this.readyApis }; this.InitializeTextBoxes(); this.InitializeComboBoxes(); }
/// <summary> /// Initializes a new instance of the <see cref="WpfAssetTile"/> class. /// </summary> /// <param name="assetTileData">The assetTileData<see cref="AssetTileData"/></param> /// <param name="appData">The appData<see cref="AppData"/></param> /// <param name="readyApis">The readyApis<see cref="Dictionary{IApi, List{Asset}}"/></param> public WpfAssetTile(AssetTileData assetTileData, AppData appData, Dictionary <IApi, List <Asset> > readyApis) { this.positionLocked = false; this.readyApis = readyApis; this.globalTileStyle = appData.TileHandlerData.GlobalTileStyle; this.AssetTileData = assetTileData; this.Loaded += this.AssetTile_Loaded; this.InitializeComponent(); this.Left = this.AssetTileData.TilePosition.FromLeft; this.Top = this.AssetTileData.TilePosition.FromTop; this.RefreshTileStyle(); }