Dear All
Today i successfully get the current published item from the sharepoint list in my custom webpart
here i s a code for it
**********************
using System;
using System.ComponentModel;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using Microsoft.SharePoint;
using Microsoft.SharePoint.WebControls;
using System.Text;
using Microsoft.SharePoint.WebPartPages;
using System.Globalization;
using System.Threading;
namespace customwebpart.slider
{
[ToolboxItemAttribute(false)]
public partial class sliderUserControl : UserControl
{
/// <summary>
/// ListName
/// </summary>
[WebBrowsable(true)]
[WebDescription("HomeSliderListName")]
[WebDisplayName("HomeSlider List Title")]
//[ResourcesAttribute("WebUrl", "Custom", "WebUrlDescription")]
[Personalizable(PersonalizationScope.Shared)]
public string ListName
{
get;
set;
}
protected CultureInfo currentCulture
{
get { return Thread.CurrentThread.CurrentCulture; }
}
protected void Page_Load(object sender, EventArgs e)
{
ListName = HttpContext.GetGlobalResourceObject("wss", "[Your List Name]", currentCulture).ToString();
if (String.IsNullOrEmpty(this.ListName))
{
lblMessage.Text = "Edit the web part and specify a Picture Library to display.";
lblMessage.Visible = true;
return;
}
using (SPSite Site = new SPSite(SPContext.Current.Site.ID))
{
using (SPWeb Web = Site.OpenWeb(SPContext.Current.Web.ID))
{
SPList Slider = Web.Lists[ListName];
SPListItemCollection Items = Slider.Items;
StringBuilder largeImages = new StringBuilder();
StringBuilder smallImages = new StringBuilder();
int j=1;
if (Slider.EnableVersioning)
{
foreach (SPListItem item in Items)
{
SPListItemVersionCollection versions = item.Versions;
for (int i = 0; i < versions.Count; i++)
{
// Check if version is published
if (versions[i].Level == SPFileLevel.Published && versions[i].IsCurrentVersion == true)
{
smallImages.Append("<div title='" + j + "'> </div>");
largeImages.Append(string.Format(currentCulture, "<a href='" + (string)versions[i]["URL"] + "' target='_blank'> <img src='/{0}' alt='{1}' title='{1}' id='{2}'/></a>", (string)item["Required Field"], (string)versions[i]["Title"], ID));
j = j + 1;
}
}
}
}
else
{
foreach (SPListItem item in Items)
{
smallImages.Append("<div title='" + j + "'> </div>");
largeImages.Append(string.Format(currentCulture, "<a href='" + (string)item["URL"] + "' target='_blank'> <img src='/{0}' alt='{1}' title='{1}' id='{2}'/></a>", (string)item["Required Field"], (string)item["Title"], ID));
j = j + 1;
}
}
LargeImageContainer.Text = largeImages.ToString();
smallImageContainer.Text = smallImages.ToString();
this.lbllang.Text = currentCulture.Name.ToLower(currentCulture);
}
}
}
}
}
Today i successfully get the current published item from the sharepoint list in my custom webpart
here i s a code for it
**********************
using System;
using System.ComponentModel;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using Microsoft.SharePoint;
using Microsoft.SharePoint.WebControls;
using System.Text;
using Microsoft.SharePoint.WebPartPages;
using System.Globalization;
using System.Threading;
namespace customwebpart.slider
{
[ToolboxItemAttribute(false)]
public partial class sliderUserControl : UserControl
{
/// <summary>
/// ListName
/// </summary>
[WebBrowsable(true)]
[WebDescription("HomeSliderListName")]
[WebDisplayName("HomeSlider List Title")]
//[ResourcesAttribute("WebUrl", "Custom", "WebUrlDescription")]
[Personalizable(PersonalizationScope.Shared)]
public string ListName
{
get;
set;
}
protected CultureInfo currentCulture
{
get { return Thread.CurrentThread.CurrentCulture; }
}
protected void Page_Load(object sender, EventArgs e)
{
ListName = HttpContext.GetGlobalResourceObject("wss", "[Your List Name]", currentCulture).ToString();
if (String.IsNullOrEmpty(this.ListName))
{
lblMessage.Text = "Edit the web part and specify a Picture Library to display.";
lblMessage.Visible = true;
return;
}
using (SPSite Site = new SPSite(SPContext.Current.Site.ID))
{
using (SPWeb Web = Site.OpenWeb(SPContext.Current.Web.ID))
{
SPList Slider = Web.Lists[ListName];
SPListItemCollection Items = Slider.Items;
StringBuilder largeImages = new StringBuilder();
StringBuilder smallImages = new StringBuilder();
int j=1;
if (Slider.EnableVersioning)
{
foreach (SPListItem item in Items)
{
SPListItemVersionCollection versions = item.Versions;
for (int i = 0; i < versions.Count; i++)
{
// Check if version is published
if (versions[i].Level == SPFileLevel.Published && versions[i].IsCurrentVersion == true)
{
smallImages.Append("<div title='" + j + "'> </div>");
largeImages.Append(string.Format(currentCulture, "<a href='" + (string)versions[i]["URL"] + "' target='_blank'> <img src='/{0}' alt='{1}' title='{1}' id='{2}'/></a>", (string)item["Required Field"], (string)versions[i]["Title"], ID));
j = j + 1;
}
}
}
}
else
{
foreach (SPListItem item in Items)
{
smallImages.Append("<div title='" + j + "'> </div>");
largeImages.Append(string.Format(currentCulture, "<a href='" + (string)item["URL"] + "' target='_blank'> <img src='/{0}' alt='{1}' title='{1}' id='{2}'/></a>", (string)item["Required Field"], (string)item["Title"], ID));
j = j + 1;
}
}
LargeImageContainer.Text = largeImages.ToString();
smallImageContainer.Text = smallImages.ToString();
this.lbllang.Text = currentCulture.Name.ToLower(currentCulture);
}
}
}
}
}
I hope it save your time because i found the solution after long search
Regards
Comments
Post a Comment