首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >动态更改css类

动态更改css类
EN

Stack Overflow用户
提问于 2018-06-27 18:06:57
回答 1查看 704关注 0票数 1

我一直在使用ASP.NET和WebForms为chatbox做一个小项目,基本上我只能尝试更改面板的类,这样我就可以确定消息应该放在盒子的左边还是右边,这取决于发送消息的人。

这就是我目前正在使用的所有这些:

代码语言:javascript
运行
复制
<div class="lv-body" id="ms-scrollbar" style="overflow:scroll; overflow-x: hidden; height:520px;">
    <asp:UpdatePanel ID="UpdatePanel1" runat="server">
        <ContentTemplate>
           <asp:Timer ID="Timer1" runat="server" OnTick="Timer1_Tick" Interval="1000"></asp:Timer>
           <asp:DataList ID="DataList3" runat="server">
                <ItemTemplate>
                    <asp:Panel class="lv-item media" id="MessageBox" runat="server">
                        <div class="media-body"> 
                            <div class="ms-item"> 
                                <span class="glyphicon glyphicon-triangle-left" style="color:#000000;"></span> 
                                <asp:Label ID="Message" runat="server" Text='<%# Bind("Message") %>'></asp:Label>
                            </div>
                            <small class="ms-date">
                                <span class="glyphicon glyphicon-time"></span>&nbsp; 
                                <asp:Label Width="900px" ID="Date" runat="server" Text='<%# Bind("Date") %>'></asp:Label>
                            </small> 
                        </div>
                    </asp:Panel>
                  </ItemTemplate>
             </asp:DataList>
        </ContentTemplate>
    </asp:UpdatePanel>
</div>

我是这样通过CodeBehind填充值的:

代码语言:javascript
运行
复制
    public void LoadChatbox()
    {
        DateTime date = DateTime.Now;
        string date3 = date.ToString("dd-MM-yyyy");
        MySQL.MySqlCommand Cmd = new MySQL.MySqlCommand(MySQL.MySqlCommandType.SELECT);
        Cmd.Select("helpdesk").Where("Sender", Label1.Text).And("Receiver", Label2.Text).Or("Sender", Label2.Text).And("Receiver", Label1.Text).Order("UniqueID");
        MySQL.MySqlReader R = new MySQL.MySqlReader(Cmd);
        DataList3.DataSource = R._dataset;
        DataList3.DataBind();
    }

一切都很好,但基本上我需要一种方法来确定MessageBox (面板)是显示在左边还是右边。在它的类中添加"right“可以做到这一点,但我需要一种方法来做到这一点。

编辑: Label1代表我的名称/id,Label2代表聊天的其他成员的名称/id,因此可以使用这些值来确定我是发送它还是由其他人发送。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-06-27 18:18:04

我要说的是,在伪代码中:

代码语言:javascript
运行
复制
   <% if (Sender==me){  %>
      <div class="media-body" style="text-align: right;"> 
        ...
     </div>
    else
      <div class="media-body" style="text-align: left;">
       ... 
      </div>
    <% } %>

此外,您最好使用参数化查询,这一行代码很危险:

代码语言:javascript
运行
复制
 Cmd.Select("helpdesk").Where("Sender", Label1.Text).And("Receiver", Label2.Text).Or("Sender", Label2.Text).And("Receiver", Label1.Text).Order("UniqueID");
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51068970

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档