powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / WPF, Silverlight [игнор отключен] [закрыт для гостей] / как узнать размер текста на Silverligth?
6 сообщений из 6, страница 1 из 1
как узнать размер текста на Silverligth?
    #38046795
Solomka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я хочу разместить Label посередине Rectangle, но не знаю как...
ActualWidth - возвращает 0...

Вот код
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
for (int idm = 0; idm < TotalCountMonth; idm++)
                {
                    Rectangle rectMonth = new Rectangle();
                    rectMonth.SetValue(Canvas.LeftProperty,leftNextRect);
                    rectMonth.SetValue(Canvas.TopProperty,topMonthRectangles);
                    double wigthCurRect = countDayInMonth[idm]*sideRectanglDay;
                    rectMonth.Height = heigthMonthScale;
                    rectMonth.Width = wigthCurRect;
                    rectMonth.Stroke = brushLines;

                    Label lblT = new Label();
                    lblT.SetValue(Canvas.LeftProperty,leftNextRect+2.0);
                    lblT.SetValue(Canvas.TopProperty,topMonthRectangles);
                    lblT.Content = namesMonths[dtTempCalcDayInMpnth.Month-1];

                    double r1 = lblT.ActualWidth; // Здесь ActualWidth возвращает просто 0.0
                    canvasDgGant.Children.Add(lblT);
                    double r2 = lblT.ActualWidth; // Здесь ActualWidth тоже возвращает просто 0.0

                    canvasDgGant.Children.Add(rectMonth);
                    leftNextRect += wigthCurRect;
                    dtTempCalcDayInMpnth = dtTempCalcDayInMpnth.AddMonths(1);
                }



Какой есть способ узнать размеры текста?
...
Рейтинг: 0 / 0
как узнать размер текста на Silverligth?
    #38048691
AlexeiK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Solomka,

да там фишка. что просчет actual будет не сразу.
ты добавь сначала в канву свой label и потом посмотри , просчитает или нет.
если нет, то есь методы, заставляющие считать, или просо потом отложить установку по среедние, уже вд ругом событии.
...
Рейтинг: 0 / 0
как узнать размер текста на Silverligth?
    #38049927
Solomka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlexeiKSolomka,

да там фишка. что просчет actual будет не сразу.
ты добавь сначала в канву свой label и потом посмотри , просчитает или нет.
если нет, то есь методы, заставляющие считать, или просо потом отложить установку по среедние, уже вд ругом событии.

А что за методы?
...
Рейтинг: 0 / 0
как узнать размер текста на Silverligth?
    #38049979
Фотография EDUARD SAPOTSKI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SolomkaА что за методы?
Попробуй перед определением ширины всунуть UpdateLayout();
Но вообще ты фигней маешься, есть контрол StackPanel, вот в него и нужно добавнять это дело и не изобретать велосипед. А ректангл с лейбой можно отдельным контролом сделать...
...
Рейтинг: 0 / 0
как узнать размер текста на Silverligth?
    #38050428
Solomka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
EDUARD SAPOTSKISolomkaА что за методы?
Попробуй перед определением ширины всунуть UpdateLayout();
Но вообще ты фигней маешься, есть контрол StackPanel, вот в него и нужно добавнять это дело и не изобретать велосипед. А ректангл с лейбой можно отдельным контролом сделать...

UpdateLayout() - конечно помог..

А вот результат от второго предложения не получился такой как бы хотелось.
StackPanel - в него вставляются контролы поочереди рядышком (как в табличной структуре), а не друг на друга.
У панели можно сделать градиентную заливку. Но нельзя сделать чтобы эта градиентная заливка была с округленными углами
...
Рейтинг: 0 / 0
как узнать размер текста на Silverligth?
    #38050459
Фотография EDUARD SAPOTSKI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SolomkaА вот результат от второго предложения не получился такой как бы хотелось.
StackPanel - в него вставляются контролы поочереди рядышком (как в табличной структуре), а не друг на друга.
У панели можно сделать градиентную заливку. Но нельзя сделать чтобы эта градиентная заливка была с округленными углами
У панели есть свойство Orientation, поставь вертикальную и будет тебе счастье :)
Под панель засунь бордер, задай радиус и заливай как хочешь, саму панель сделай прозрачной.
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / WPF, Silverlight [игнор отключен] [закрыт для гостей] / как узнать размер текста на Silverligth?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]