Обработка операторов If в файлах .aspx на asp.net - PullRequest
0 голосов
/ 10 июля 2009

Один из моих файловых кодов отправляет некоторое логическое значение (считанное из базы данных) в соответствующий файл .aspx. Я хочу изменить класс стилей css для деления контейнера на основе этого логического значения. Я попытался сделать это следующим образом,

код файла:

protected void Page_Load(object sender, EventArgs e)
{
    Result.InnerText = "false";  //In real scenario, this is retrieved from a db
}

файл aspx:

<form id="form1" runat="server">
<% if (Result.InnerText == "true") { Result.Style["Color"] = "#000000"; } else { Result.Style["Color"] = "#ff0000"; } %>
<div id="Result" runat="server">
</div>
</form>

Кажется, он работает правильно, но я не удовлетворен этим фрагментом. Это способ сделать это ?? Я делаю это правильно ???

UPDATE:

Есть ли другой способ сделать это? Если так, какой из них лучше? Примечание: я должен быть в состоянии изменить имя класса css (применяется к подразделению) всякий раз, когда требуется

Ответы [ 3 ]

3 голосов
/ 10 июля 2009

Ваш Result Div подключен в коде, поэтому вам вообще не нужно помещать оператор if в ASPX.

protected void Page_Load(object sender, EventArgs e)
{
    Result.InnerText = "false";  //In real scenario, this is retrieved from a db

    if (Result.InnerText == "true") {
        Result.Style["Color"] = "#000000";
    } else {
        Result.Style["Color"] = "#ff0000";
    }
}
2 голосов
/ 10 июля 2009

Сначала я бы создал общедоступную переменную, скажем result. Затем в вашем .aspx сделайте это:

<div id="result" class='<%=(result?"someClass":"someOtherClass") %>'>
    Your text
</div>

Или, если вы хотите сделать все это на сервере (.aspx):

<div id="result" runat="server">
    Your text
</div>

.cs

if (result) {
    result.CssClass = "yourClass";
} else {
    result.CssClass = "anotherClass";
}
2 голосов
/ 10 июля 2009

Вы можете установить цвет в c # (код позади) после строки, где вы получите значение переменной из БД.

Result.Style["Color"] = (myDBVariable == "false") ? "#000000" : "#ff0000"; 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...