私は、エントリが開かれた日付を保持するAssigneeView
という属性を含むオブジェクトのリストがロードされたリストビューを持っています。 listview's
ItemTemplate
には「lblHeader」というラベルが付けられています。私がしたいのは、ListView
.Itemsをループし、各要素のAssigneeView
属性をチェックします。null
の場合は、lblHeader.Text
を太字に設定します(未読であることを示します)。どのように私は各readlistviewitemをループし、値をチェックし、太字に設定するのですか?
私はticketID
と呼ばれるアイテムのリストの中Object
から属性を受け取るメソッドを作成し、AssigneeView
フィールドは、そのフィールドのヌルであるかどうかを検索し、bool
を返すようにしたいです。だから、それは何かのように見えるでしょう
私はこれを行うために必要なものを得るためにtelerikコントロールを掘る方法について100%ではありません。助言がありますか?
UPDATE:私は現時点では午前どこ ここにあります:
using (var client = new QUTIService.QSVCClient())
{
var data = client.SearchTickets(this.myGuid, txtSearchString.Text, 100, chkSearchClosed.Checked).ToList();
lsvResultTickets.DataSource = data;
lsvResultTickets.DataBind();
if (data.Count == 0)
{
lblStatus.Text = "No tickets found.";
}
else
{
foreach (var item in lsvResultTickets.Items)
{
var obj = item.DataItem as QT.FullTicket;
if (TicketIsUnread(obj.OriginalTicket.TicketID))
{
//???
}
}
}
}
これでイベントハンドラに入れました。 RadListViewItemEventArgs eが参照です。私はe.Item.FindControl( "lblHeader")でラベルにアクセスし、大胆に大胆に設定することができます。しかし、アイテムからオブジェクトをアンボックスすることに問題があります。通常のASPコントロールは、通常、かなりストレートです:(タイプ)e.Itemまたはそのようなもの。しかし、e.ItemはRadListViewItem型であり、内部にあるFullTicketオブジェクトにキャストしません。 – Sinaesthetic