powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WPF, Silverlight [игнор отключен] [закрыт для гостей] / Где конструктор объекта?
3 сообщений из 3, страница 1 из 1
Где конструктор объекта?
    #36846614
karapetyan_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вот простейший xaml:[SRC xaml]<UserControl x:Class="TestApp.MainPage"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:my="clr-namespace:TestApp"
mc:Ignorable="d"
d:DesignHeight="300" d:DesignWidth="400">

<UserControl.Resources>
<my:User x:Name="CurrentUser" x:Key="CurrentUser" />
</UserControl.Resources>

<StackPanel x:Name="LayoutRoot">
<TextBox x:Name="_loginTextBox"
Text="{Binding Login, Mode=TwoWay, Source={StaticResource CurrentUser}}"
Width="100" Height="30" />
</StackPanel>

</UserControl>
[/SRC]
...
Рейтинг: 0 / 0
Где конструктор объекта?
    #36846626
karapetyan_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Извиняюсь, вместо предпросмотра, нажал отправить.

Вот простейший xaml:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
<UserControl x:Class="TestApp.MainPage"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    xmlns:my="clr-namespace:TestApp"
    mc:Ignorable="d"
    d:DesignHeight="300" d:DesignWidth="400">

    <UserControl.Resources>
        <my:User x:Name="CurrentUser" x:Key="CurrentUser" />
    </UserControl.Resources>
    
    <StackPanel x:Name="LayoutRoot">
        <TextBox x:Name="_loginTextBox" 
                 Text="{Binding Login, Mode=TwoWay, Source={StaticResource CurrentUser}}" 
                 Width="100" Height="30" />
    </StackPanel>

</UserControl>

Вот его код:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
using System.Windows.Controls;

namespace TestApp
{
    public partial class MainPage : UserControl
    {
        public MainPage()
        {
            InitializeComponent();
            this._loginTextBox.Text = "asdfasf"; // _loginTextBox существует
            MessageBox.Show(this.CurrentUser.ToString()); // CurrentUser НЕ существует !!!
        }

    }

    public class User : INotifyPropertyChanged
    {
        private string _login;
        private string Login
        {
            get { return this._login; }
            set
            {
                this._login = value;
                this.OnPropertyChanged("Login");
            }
        }

        public event PropertyChangedEventHandler PropertyChanged;
        private void OnPropertyChanged(string propName)
        {
            if (this.PropertyChanged != null)
                this.PropertyChanged(this, new PropertyChangedEventArgs(propName));
        }

        public override string ToString()
        {
            return this._login;
        }
    }
}

Подскажите пожалуйста почему в методе InitializeComponent нет вызова конструкторов для TextBox и CurrentUser и в то же время TextBox существует, т.е. где-то, каким то чудом его конструктор вызывается, а для моего класса User конструктор не вызывается?

С уважением, Ашот.
...
Рейтинг: 0 / 0
Где конструктор объекта?
    #36846639
karapetyan_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вопрос снимаю, намудрил с x:Name, x:Key.....
надо оставить только x:Key
и в конструкторе после инициализации получить ссылку на юзера так:
this._currentUser = (User)this.Resources["user"];

Хотя все равно не понятно где прописаны конструкторы...........
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / WPF, Silverlight [игнор отключен] [закрыт для гостей] / Где конструктор объекта?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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