从代码后面返回值到aspx页面

时间:2012-09-26 08:48:26

标签: c# asp.net css

所以,我想用一个看起来像这样的代码隐藏函数来设置我的cssclass,但它不起作用,我只在最终代码中得到一个ampty字符串,我做错了什么?

.aspx的:

<td align="left" class="<% GetCssForUser("start") %>">

代码隐藏:

        protected string GetCssForUser(string field)
    {
        string css = "";

        switch(field)
        {
            case "start":
                css = "start";
                break;
            case "end":
                css = "end";
                break;
            case "course":
                css = "course";
                break;
            case "group":
                css = "group";
                break;
            case "teacher":
                css = "teacher";
                break;
            case "room":
                css = "room";
                break;
            case "plan":
                css = "plan";
                break;
        }

        if (User.ActiveRole == Teacher)
        {
            css += "Teacher";
        }
        else 
        {
            css += "Student";
        }

        return css;
    }

4 个答案:

答案 0 :(得分:2)

我认为你在这段代码中弄乱语法

<td align="left" class="<% GetCssForUser("start") %>">

它像这样使用

<td align="left" class="<%=GetCssForUser("start") %>">

我认为这会对你有所帮助

答案 1 :(得分:2)

尝试:

class='<%=GetCssForUser("start") %>'

注意%=和开场'<以及结束>'(因为后面的"start"

答案 2 :(得分:1)

试试这个: <td align="left" class="<%= GetCssForUser("start") %>">

答案 3 :(得分:0)

您可以尝试使用此代码

youControl.Attributes.Add("class", css );