PDA

View Full Version : تغییر رنگ ردیف هایی از گرید که مقدار یک فیلد آن از یک فیلد از جدول دیگری کمتر است



alibabaei2
شنبه 05 مرداد 1392, 23:27 عصر
سلام می خواستم اگر در گریدم ردیفی بود که مقدار یک فیلد اون ردیف از مقدار یک فیلد دیگری در جدول دیگری کمتر بود اون ستون رنگش فرق کنه
برای تغییر رنگ گرید در رویداد RowDataBound گرید کد زیر رو می نویسم در حالتی که می خوام ستون هایی تغییر رنگ بدن که مقدار مشخص دارند
if (e.Row.RowType == DataControlRowType.DataRow)
{
if (Convert.ToBoolean(DataBinder.Eval(e.Row.DataItem, "IsPaid")) == true)
{
e.Row.BackColor = Color.LightSeaGreen;
}
else
{
e.Row.BackColor = Color.LightSteelBlue;
}
}
اما الان نمیدونم باید چی کار کنم

sam166
یک شنبه 06 مرداد 1392, 02:38 صبح
الان مشکلت کجاست؟؟؟

alibabaei2
یک شنبه 06 مرداد 1392, 03:35 صبح
اینکه چطور بفهمم آی دی اون سطر چیه که برم مقدار معادل در جدول دوم رو پیدا کنم و بیارم با این مقدار مقایسه کنم

alibabaei2
یک شنبه 06 مرداد 1392, 13:14 عصر
کسی نتونست پاسخ بده؟

iranolom
یک شنبه 06 مرداد 1392, 13:21 عصر
السلام


گرید ویو رو امتحان نکردم ولی اگر بتونید و به کارتون لیست ویود بیاد می تونید توی listView به راحتی با ایجاد شرط هایی خروجی رو کنترل کنید مثلا اگر فلان فیلد این مقدار رو داشت فلان کار را بکن ...
برای بخش بندی هم از table استفاده کنید و رنگ پس زمینه شو هم خودتون کنترل کنید در خروجی...

mohammad kafiyan
یک شنبه 06 مرداد 1392, 13:41 عصر
CustomerID = ((Label)GridView1.Rows[e.RowIndex].FindControl("lblCustomerID")).Text;

sam166
یک شنبه 06 مرداد 1392, 15:06 عصر
شما داخل گرید ویو یه لیبل رو یایند کن به ID سطرت

بعد داخل RowDataBound اینجوری مقدارش رو بگیر

foreach (GridViewRow myrow in grdaview.Rows)
{
Label lblid = (Label)myrow.Cells[0].FindControl("lblid");//گرفتن مقدار idسطر