Я работал над небольшим проектом для чата с использованием ASP.NET и WebForms, и в основном я застрял, пытаясь изменить класс панели, чтобы я мог определить, следует ли разместить сообщение слева или с правой стороны коробки в зависимости от того, кто ее отправил.
Вот как я сейчас использую все это:
<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>
<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:
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 (панель) слева или справа. Добавление «права» к его классу сделает это, но мне нужен способ сделать это.
РЕДАКТИРОВАТЬ: Label1 представляет мое имя / идентификатор, а Label2 представляет имя / идентификатор другого участника чата, поэтому эти значения могут использоваться для определения, отправил ли я его или другой человек.