2011-01-08 2 views
0

ive сделал небольшое приложение, используя C# для sp 2010, то, что я делаю, это получение элементов из коллекции и просмотр определенных полей, которые я хочу, проблема в том, когда я нажимаю элемент, показывает мне деталь каждого элемента, назначенный для текущего пользователя, как я могу показать только детали текущего элемента, который пользователь щелкает, ниже мой код ... спасибоSharePoint получить текущий элемент списка из коллекции

foreach (SPListItem myItem in myItemCollection) 

    { 
    if (myList.Fields.ContainsField("Title")) 
    { 
    EntreeListItemDetailNameValue l = lGrp.AddListItem<EntreeListItemDetailNameValue>(); 
    SPField myField1 = myList.Fields.GetField("Title"); 
    l.Name = myField1.Title; 
    try 
    { 
     l.Value = myField1.GetFieldValueAsText(myItem["Title"]); 


    } 
    catch 
    { 
     l.Value = ""; 
    } 

    } 
    if (myList.Fields.ContainsField("Priority")) 
    { 
    EntreeListItemDetailNameValue l2 = lGrp.AddListItem<EntreeListItemDetailNameValue>(); 
    SPField myField = myList.Fields.GetField("Priority"); 
    l2.Name = myField.Title; 

    try 
    { 
     l2.Value = myField.GetFieldValueAsText(myItem["Priority"]); 
    } 
    catch 
    { 
     l2.Value = ""; 
    } 
+0

ли коллекция привязывается к GridView или с omething, где щелчок строки будет показывать что-то вроде всплывающего окна с значениями поля? – Colin

ответ

0

Вы можете использовать GetItemById() http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.splistitemcollection.getitembyid.aspx

void list_Click(object sender, EventArgs e) { 
    int clickedid = 0; //get the id from the clicked item 
    ShowForm(); //show detail form 
    DataBind(clickedid); //databind detail form 
} 

void DataBind(int id) { 
    SPListItemCollection myItemCollection = showthing; //load the list items, query using SPQuery, or SPList.Items 
    SPListItem item = myItemCollection.GetItemById(id); 
    form.Title = item["Title"]; 
} 
Смежные вопросы