Как заполнить элемент управления, который используется в шаблоне, значением по умолчанию? - PullRequest
0 голосов
/ 07 августа 2009

Я новичок в wpf. Я пишу календарь управления. Я определил шаблон по умолчанию в Generic.xaml. Все даты заполняются в списке. Поскольку список определен в шаблоне, я использую FindName () для доступа к элементу управления. Проблема в том, что я не могу вызвать метод, который заполняет список в конструкторе, потому что он обращается к элементу управления шаблоном (который, я считаю, не инициализируется в то время. Вот код, который заполняет


private void DisplayCurrentMonthContents()
    {
        int daysInMonth = DateTime.DaysInMonth(DateTime.Now.Year, CurrentMonth);
        TextBlock CurrentMonthTextBlock = GetTextBlock();
        ListBox DateListBox = (ListBox)Template.FindName("PART_ListBox", this);

        CurrentMonthTextBlock.Text = CultureInfo.CurrentCulture.DateTimeFormat.GetMonthName(CurrentMonth);
        DateListBox.Items.Clear();
        for (int counter = 1; counter != daysInMonth; counter++)
        {
            DateListBox.Items.Add(counter);
        }
    }

Мне кажется, что я подхожу к этому неправильно. Как я могу заполнить элемент управления, используемый в шаблоне, значением по умолчанию?

1 Ответ

0 голосов
/ 07 августа 2009

Неважно. Я получил решение. Не используйте конструктор. Вместо этого переопределите OnApplyTemplate ()

Приветствие.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...