private void setWinLayout() { // размеры this.Width = (double)AppLib.GetAppGlobalValue("screenWidth"); this.Height = (double)AppLib.GetAppGlobalValue("screenHeight"); this.Top = 0; this.Left = 0; double pnlMenuWidth, pnlMenuHeight; //pnlMenuHeight = (double)AppLib.GetAppGlobalValue("categoriesPanelHeight"); //pnlMenuWidth = (double)AppLib.GetAppGlobalValue("categoriesPanelWidth"); // высоту и ширину панели управления взять из главного окна MainWindow mainWin = (MainWindow)App.Current.MainWindow; pnlMenuHeight = mainWin.gridMenuSide.ActualHeight; pnlMenuWidth = mainWin.gridMenuSide.ActualWidth; brdAboveFolderMenu.Height = pnlMenuHeight; brdAboveFolderMenu.Width = pnlMenuWidth; double dW, dH, d1; double grdContentWidth = getAbsColWidth(gridWindow, 1, ((this.Width <= pnlMenuWidth) ? this.Width : this.Width - pnlMenuWidth)); double grdContentHeight = AppLib.GetRowHeightAbsValue(gridWindow, 1, ((this.Height <= pnlMenuHeight) ? this.Height : this.Height - pnlMenuHeight)); double itemWidth = 10, itemHeight = 10, garnTextFontSize = 10; Setter st; Thickness thMargin; Style lbiStyle = (Style)this.Resources["addingsListBoxItemStyle"]; Style garnTextStyle = (Style)this.Resources["garnishTextStyle"]; // вертикальное размещение if (AppLib.IsAppVerticalLayout == true) { DockPanel.SetDock(brdAboveFolderMenu, Dock.Top); gridWindow.RowDefinitions[1].Height = new GridLength(5d, GridUnitType.Star); gridWindow.ColumnDefinitions[1].Width = new GridLength(10d, GridUnitType.Star); // строка изображения gridMain.RowDefinitions[2].Height = new GridLength(2.5, GridUnitType.Star); // строки добавок gridMain.RowDefinitions[5].Height = new GridLength(1.2, GridUnitType.Star); gridMain.RowDefinitions[8].Height = new GridLength(1.2, GridUnitType.Star); // Кнопка Добавить gridAddButtonSection.RowDefinitions[1].Height = new GridLength(2.0, GridUnitType.Star); grdContentWidth = getAbsColWidth(gridWindow, 1, ((this.Width == pnlMenuWidth) ? this.Width : this.Width - pnlMenuWidth)); grdContentHeight = AppLib.GetRowHeightAbsValue(gridWindow, 1, ((this.Height == pnlMenuHeight) ? this.Height : this.Height - pnlMenuHeight)); // ширина изображения dW = getAbsColWidth(gridMain, 1, grdContentWidth); dishImage.Width = 0.4d * dW; // текст добавки dH = AppLib.GetRowHeightAbsValue(gridMain, 5, grdContentHeight); garnTextFontSize = (0.4d * dH) * 0.3d; } // горизонтальное размещение else { DockPanel.SetDock(brdAboveFolderMenu, Dock.Left); // ширина изображения dW = getAbsColWidth(gridMain, 1, grdContentWidth); dishImage.Width = 0.35d * dW; dH = AppLib.GetRowHeightAbsValue(gridMain, 5, grdContentHeight); garnTextFontSize = (0.4d * dH) * 0.3d; } // ширина элемента списка добавок dW = getAbsColWidth(gridMain, 1, grdContentWidth); // + getAbsColWidth(gridMain, 2, grdContentWidth); dW /= 5d; itemWidth = 0.9d * dW; thMargin = new Thickness(0, 0, 0.1 * dW, 0); st = (Setter)lbiStyle.Setters.FirstOrDefault(s => (s as Setter).Property.Name == "Margin"); st.Value = thMargin; st = (Setter)lbiStyle.Setters.FirstOrDefault(s => (s as Setter).Property.Name == "Width"); st.Value = itemWidth; st = (Setter)garnTextStyle.Setters.FirstOrDefault(s => (s as Setter).Property.Name == "FontSize"); st.Value = garnTextFontSize; if (AppLib.IsAppVerticalLayout) { st = (Setter)garnTextStyle.Setters.FirstOrDefault(s => (s as Setter).Property.Name == "Margin"); thMargin = new Thickness(-0.4 * 0.1 * dW, 0, -0.4 * 0.1 * dW, 0); st.Value = thMargin; } } // method