Инициализировать свойство Dictionary в коде ASPX - PullRequest
1 голос
/ 08 апреля 2011

В настоящее время я пытаюсь инициализировать свойство Dictionary пользовательского элемента управления с помощью кода ASP.NET 2.0 и не могу найти правильный синтаксис.

Предположим, у меня есть очень простой UserControl со свойством Dictionary:

using System;
using System.Collections.Generic;
using System.Web.UI;

public class MyUserControl : UserControl
{
    [PersistenceMode(PersistenceMode.InnerProperty)]
    public Dictionary<string, string> Dict { get; set; }
}

Как мне инициализировать его на странице ASPX?

Я пробовал разные вещи, как этот, но ни один не работал:

<my:MyUserControl>
    <Dict>
        <dictionaryentry key="a_key" value="a_value" />
    </Dict>
</my:MyUserControl>

Я также попытался заменить словарь на add или KeyValuePair, но безуспешно.

Кто-нибудь знает способ сделать это с простым ASPX-кодом? Я мог бы использовать C # на своей странице, но я ищу более «классное» решение.

Спасибо за ваши ответы.

-
Eric

1 Ответ

1 голос
/ 08 апреля 2011

К сожалению, это не так просто - вы должны предоставить свойство, которое может содержать коллекцию, а затем иметь тип редактора для этой коллекции. Смотрите код MSDN для примера кода.

...