PDA

View Full Version : بولد کردن پیامهای خوانده نشده



aboulfazl950
دوشنبه 04 آذر 1392, 20:11 عصر
سلام!
یک تیبل برای پیامها در sql دارم و تمام پیامها را در یک گرید نشان می دهم چه طور باید پیامهای خوانده نشده را در گرید بولد کنم.
(در تیبل یک ستون به نام خوانده شده با دو مقدار 0 و 1 دارم . )
دیگه عقلم به جایی قد نمی ده!!!

shima and pariya
دوشنبه 04 آذر 1392, 21:46 عصر
خب موقع بايند كردن گريد چك كن اگه ستون مقدارش يك هست با ي استايل و اگه 0 هست با ي استاي لديگه نمايش داده بشه
نمونه كد شو ميزارم واست
protected void GridView_Inbox_RowDataBound(object sender, GridViewRowEventArgs e)
{
GridViewRow item = e.Row;
if (item.DataItem == null)
{
return;
}

LinkButton LinkButton_Subject = (LinkButton)item.FindControl("LinkButton_Subject");
CheckBox CheckBox_IsRead = (CheckBox)item.FindControl("CheckBox_IsRead");
Image Image_Read = (Image)item.FindControl("Image_Read");

if (CheckBox_IsRead.Checked)
{
LinkButton_Subject.Font.Bold = false;
Image_Read.ImageUrl = "~/Images/ReadMessage.gif";
}
else
{
LinkButton_Subject.Font.Bold = true;
Image_Read.ImageUrl = "~/Images/NewMessage.gif";
}


}
و html به اين صورت:
<
asp:GridView id="GridView_Inbox" runat="server" Width="100%" OnRowDataBound="GridView_Inbox_RowDataBound" GridLines="Horizontal" DataSourceID="SqlDataSource_Inbox" AutoGenerateColumns="False"><Columns>
<asp:TemplateField>
<HeaderStyle BackColor="#C1BFBF" />
<ItemStyle Width="5%" CssClass="Col2" HorizontalAlign="Center"
VerticalAlign="Middle" BackColor="#C1BFBF"></ItemStyle>
<ItemTemplate>
<asp:Image ID="Image_Read" runat="server" ImageUrl="~/Images/ReadMessage.gif" />
<asp:CheckBox ID="CheckBox_IsRead" runat="server" Checked='<%# Bind("IsRead") %>'
Visible="False" />

</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField SortExpression="Subject" HeaderText="عنوان" ><EditItemTemplate>
&nbsp;

</EditItemTemplate>

<HeaderStyle ForeColor="#2595AF" BackColor="#C1BFBF"/>

<ItemStyle Width="40%" CssClass="Col1" HorizontalAlign="Right" VerticalAlign="Middle"></ItemStyle>
<ItemTemplate>
<asp:LinkButton ID="LinkButton_Subject" runat="server" CommandArgument="<%# Container.DataItemIndex %>"
OnClick="LinkButton_Subject_Click" Text='<%# Eval("Subject") %>'></asp:LinkButton>
<asp:Label ID="Label_MessageID" runat="server" Text='<%# Eval("MessageID") %>' Visible="False"></asp:Label>

</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField SortExpression="Sender" HeaderText="فرستنده">
<HeaderStyle ForeColor="#2595AF" BackColor="#C1BFBF"/>
<ItemStyle Width="15%" CssClass="Col2" HorizontalAlign="Left" VerticalAlign="Middle"></ItemStyle>
<ItemTemplate>
<asp:HyperLink ID="HyperLink_Sender" runat="server" NavigateUrl='<%# Eval("Sender", "~/ShowProfile.aspx?uid={0}") %>'
Text='<%# Eval("Sender") %>'></asp:HyperLink>

</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField SortExpression="AddedDate" HeaderText="تاریخ ارسال">
<ItemStyle Width="15%" CssClass="Col1" HorizontalAlign="Center" VerticalAlign="Middle"></ItemStyle>

<HeaderStyle HorizontalAlign="Center" ForeColor="#2595AF" BackColor="#C1BFBF"></HeaderStyle>
<ItemTemplate>
<DIV style="VERTICAL-ALIGN: middle; WIDTH: 100%" class="Date">
<asp:Label ID="Label_Date" runat="server" CssClass="Date" Text='<%# SDKClass.GetFarsiDate(Eval("AddedDate", "{0:D}"),true) %>' style="direction: ltr; text-align: left;"></asp:Label></DIV>

</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField SortExpression="Sender" HeaderText="پاسخ">
<ItemStyle Width="10%" CssClass="Col2" HorizontalAlign="Center" VerticalAlign="Middle"></ItemStyle>

<HeaderStyle HorizontalAlign="Center" BackColor="#C1BFBF" ForeColor="#2595AF"></HeaderStyle>
<ItemTemplate>
<asp:ImageButton ID="ImageButton_Reply" runat="server" CommandArgument="<%# Container.DataItemIndex %>"
ImageUrl="~/Images/reply.gif" OnClick="ImageButton_Reply_Click" ValidationGroup="11111" />

</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="حذف">
<ItemStyle Width="5%" CssClass="Col1" HorizontalAlign="Center" VerticalAlign="Middle"></ItemStyle>

<HeaderStyle HorizontalAlign="Center" ForeColor="#2595AF" BackColor="#C1BFBF"></HeaderStyle>
<ItemTemplate>
<asp:CheckBox ID="CheckBox_Delete" runat="server" />

</ItemTemplate>
</asp:TemplateField>
</Columns>

<RowStyle Height="40px" VerticalAlign="Middle"></RowStyle>
<EmptyDataTemplate>
تاکنون پیغام جدیدی برای شما نرسیده است

</EmptyDataTemplate>

<HeaderStyle BackColor="#F5F5FF" Height="20px" ForeColor="White" HorizontalAlign="Right" Font-Bold="True" VerticalAlign="Top"></HeaderStyle>
</asp:GridView> طولاني هست ولي سادس:چشمک:
نتونستم مرتبشون كنم!!!!!!!!!!:ناراحت:

Mohammad_dn
دوشنبه 04 آذر 1392, 22:52 عصر
سلام ساده ترم هست...


using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.Configuration;
using System.Data;
using System.Data.SqlClient;

public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
string strConnection = WebConfigurationManager.ConnectionStrings["Site"].ToString();
string strCmd = "SELECT * FROM AdminMessage WHERE IsRead=0";
SqlConnection con = new SqlConnection(strConnection);
SqlCommand cmd = new SqlCommand(strCmd, con);
SqlDataAdapter ad = new SqlDataAdapter(cmd);
DataSet ds = new DataSet();
try
{
con.Open();
ad.Fill(ds, "AdminMessage");
}
catch
{
Response.Write("Error");
}
finally
{
con.Close();
}
GridView1.DataSource = ds;
GridView1.DataBind();
}
}





<%@ Page Language="C#‎" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:GridView ID="GridView1" runat="server">
</asp:GridView>
</div>
</form>
</body>
</html


البته باز ساده ترم میشه نوشت:لبخند::لبخند:

shima and pariya
دوشنبه 04 آذر 1392, 23:03 عصر
اره كد من همه رو نشون ميده و گريد و با استايل گذاشتم!!!!!!!!!!!!1
(كلا كپي كردم)

Mohammad_dn
دوشنبه 04 آذر 1392, 23:29 عصر
خیلی وقت ها نیاز نیست که کد طولانی بنویسیم(البته من قسط جسارت ندارم...فقط برای یادآوری میگم)

مثالا تو مثال زیر همون کارو بدون کد نویسی انجام میدیم



<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<script src="/Video/includes/swfobject.js" type="text/javascript"></script>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:SiteDataConnectionString %>" SelectCommand="SELECT * FROM [AdminMessage] WHERE ([IsRead] = @IsRead)">
<SelectParameters>
<asp:Parameter DefaultValue="0" Name="IsRead" Type="Int32" />
</SelectParameters>
</asp:SqlDataSource>
<br />
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataKeyNames="Id" DataSourceID="SqlDataSource1">
<Columns>
<asp:BoundField DataField="Id" HeaderText="Id" InsertVisible="False" ReadOnly="True" SortExpression="Id" />
<asp:BoundField DataField="Name" HeaderText="Name" SortExpression="Name" />
<asp:BoundField DataField="Title" HeaderText="Title" SortExpression="Title" />
<asp:BoundField DataField="Email" HeaderText="Email" SortExpression="Email" />
<asp:BoundField DataField="Message" HeaderText="Message" SortExpression="Message" />
<asp:BoundField DataField="AdminUser" HeaderText="AdminUser" SortExpression="AdminUser" />
<asp:BoundField DataField="IsRead" HeaderText="IsRead" SortExpression="IsRead" />
</Columns>
</asp:GridView>
</div>
</form>
</body>
</html>


همه چی به صورت درگ درپ هست

aboulfazl950
سه شنبه 05 آذر 1392, 21:12 عصر
سلام ساده ترم هست...


using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.Configuration;
using System.Data;
using System.Data.SqlClient;

public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
string strConnection = WebConfigurationManager.ConnectionStrings["Site"].ToString();
string strCmd = "SELECT * FROM AdminMessage WHERE IsRead=0";
SqlConnection con = new SqlConnection(strConnection);
SqlCommand cmd = new SqlCommand(strCmd, con);
SqlDataAdapter ad = new SqlDataAdapter(cmd);
DataSet ds = new DataSet();
try
{
con.Open();
ad.Fill(ds, "AdminMessage");
}
catch
{
Response.Write("Error");
}
finally
{
con.Close();
}
GridView1.DataSource = ds;
GridView1.DataBind();
}
}





<%@ Page Language="C#‎" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:GridView ID="GridView1" runat="server">
</asp:GridView>
</div>
</form>
</body>
</html


البته باز ساده ترم میشه نوشت:لبخند::لبخند:

من میخواهم همه نمایش داده شود ولی خوانده نشده ها بولد باشند.