powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WPF, Silverlight [игнор отключен] [закрыт для гостей] / как такое сделать?
8 сообщений из 8, страница 1 из 1
как такое сделать?
    #36466889
koJIo6ok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
пробывал месяца три назад - не получилось сразу бросил, теперь в програмке этого не хватает :)
помогите разобраться как сообщение об ошибке отображается снизу контрола?
...
Рейтинг: 0 / 0
как такое сделать?
    #36466912
Silverlight
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
WPF?
...
Рейтинг: 0 / 0
как такое сделать?
    #36466919
koJIo6ok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Silverlight,

да, к книжках на XAML везде, в коде нигде не попадалось
хотя мне бы в общем на словах тоже было бы хорошо
...
Рейтинг: 0 / 0
как такое сделать?
    #36466999
Silverlight
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
См DataForm. У свойств Model или ViewModel должны быть заданы атрибуты валидации. Примеров полно.
...
Рейтинг: 0 / 0
как такое сделать?
    #36467034
koJIo6ok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Silverlight,

как проверять на наличие ошибок я научился, проблема как отобразить текст ошибки под контролом
Код: plaintext
1.
2.
3.
4.
5.
6.
<ControlTemplate x:Key="validationTemplate">
  <DockPanel>
    <TextBlock Foreground="Red" FontSize="20">!</TextBlock>
    <AdornedElementPlaceholder/>
  </DockPanel>
</ControlTemplate>
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
public class myErorrTemplate : ControlTemplate
    {
        public myErorrTemplate()
        {
            FrameworkElementFactory dp = new FrameworkElementFactory(typeof(DockPanel));
            FrameworkElementFactory txt = new FrameworkElementFactory(typeof(TextBlock));
            txt.SetValue(TextBlock.ForegroundProperty, Brushes.Red);
            txt.SetValue(TextBlock.TextProperty, "adfdfgdf");
            AdornedElementPlaceholder a = new AdornedElementPlaceholder();
            dp.AppendChild(txt);
            this.VisualTree = dp;
        }
    }
куда прикрутить надо AdornedElementPlaceholder? чтот я никак :(
...
Рейтинг: 0 / 0
как такое сделать?
    #36467061
Silverlight
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
...
Рейтинг: 0 / 0
как такое сделать?
    #36467457
koJIo6ok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
всетаки я его поборол :)
Код: plaintext
1.
2.
ResourceDictionary resDic = new ResourceDictionary() { Source = new Uri("pack://application:,,/Prog/XAML/Dictionary.xaml") };
txtBox.Style = (Style)resDic["ErrorStyleBottom"];  
буду очень признателен если кто переведет отсюда создание ControlTemplate на C# из ХАМL
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
<Style x:Key = "ErrorStyleBottom">
        <Setter Property = "Validation.ErrorTemplate">
            <Setter.Value>
                <ControlTemplate>
                    <DockPanel LastChildFill = "True">
                        <TextBlock DockPanel.Dock = "Bottom"
                        Foreground = "Red"
                        FontSize = "10pt"                        
                        Text = "{Binding ElementName=MyAdorner,Path=AdornedElement.(Validation.Errors)[0].ErrorContent}">
                        </TextBlock>                                                                            
                        <AdornedElementPlaceholder Name = "MyAdorner" />
                    </DockPanel>                    
                </ControlTemplate>
            </Setter.Value>
        </Setter> 
        <Setter Property="Control.Margin" Value="0,2,0,0"/>
        <Style.Triggers>
            <Trigger Property="Validation.HasError" Value="true">
                <Setter Property="Control.Margin" Value="0,2,0,20"></Setter>               
            </Trigger>
        </Style.Triggers>
    </Style>
...
Рейтинг: 0 / 0
как такое сделать?
    #36467521
koJIo6ok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
теперь я тоже люблю XAML
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / WPF, Silverlight [игнор отключен] [закрыт для гостей] / как такое сделать?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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