C1Gallery supports data binding, it can bind image URL, caption, and link fields, or bind any data in template. Data binding is allowed if the following properties are set:
In this example you'll data bind the gallery. Complete the following steps:
<cc1:C1Gallery> markup so it appears like the following:
<cc1:C1Gallery ID="C1Gallery1" runat="server" ShowTimer="True" Width="750px" Height="416px" ThumbsDisplay="4">
</cc1:C1Gallery>
This customizes the gallery control.
To write code in Visual Basic
| Visual Basic |
Copy Code
|
|---|---|
Private Const TEXT As String = "{0} Vestibulum venenatis faucibus eros, vitae vulputate ipsum tempor ut. Donec ut ligula a metus volutpat sagittis. Duis sodales, lorem nec suscipit imperdiet, sapien metus tempor nibh, dapibus pulvinar lorem lacus molestie lacus. "
|
|
To write code in C#
| C# |
Copy Code
|
|---|---|
private const string TEXT = "{0} Vestibulum venenatis faucibus eros, vitae vulputate ipsum tempor ut. Donec ut ligula a metus volutpat sagittis. Duis sodales, lorem nec suscipit imperdiet, sapien metus tempor nibh, dapibus pulvinar lorem lacus molestie lacus. ";
|
|
To write code in Visual Basic
| Visual Basic |
Copy Code
|
|---|---|
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load |
|
To write code in C#
| C# |
Copy Code
|
|---|---|
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack || IsCallback)
{
bind();
}
}
|
|
To write code in Visual Basic
| Visual Basic |
Copy Code
|
|---|---|
Private Sub bind()
Dim list1 As List(Of ContentGallery) = GetDataSource("http://lorempixum.com/200/150/sports/{0}", "http://lorempixum.com/750/300/sports/{0}")
C1Gallery1.DataSource = list1
C1Gallery1.DataImageUrlField = "ImgUrl"
C1Gallery1.DataLinkUrlField = "LinkUrl"
C1Gallery1.DataCaptionField = "Caption"
C1Gallery1.DataBind()
End Sub
|
|
To write code in C#
| C# |
Copy Code
|
|---|---|
private void bind()
{
List list1 = GetDataSource("http://lorempixum.com/200/150/sports/{0}", "http://lorempixum.com/750/300/sports/{0}");
C1Gallery1.DataSource = list1;
C1Gallery1.DataImageUrlField = "ImgUrl";
C1Gallery1.DataLinkUrlField = "LinkUrl";
C1Gallery1.DataCaptionField = "Caption";
C1Gallery1.DataBind();
}
|
|
This code sets up the gallery's data binding.
To write code in Visual Basic
| Visual Basic |
Copy Code
|
|---|---|
Private Function GetDataSource(urlFormatStr As String, linkFormatStr As String) As List(Of ContentGallery)
Dim list As New List(Of ContentGallery)()
For i As Integer = 1 To 10
list.Add(New ContentGallery() With { _
.Content = String.Format(TEXT, String.Format("{0}.The picture one, ", i.ToString())), _
.LinkUrl = String.Format(linkFormatStr, i.ToString()), _
.ImgUrl = String.Format(urlFormatStr, i.ToString()), _
.Caption = String.Format("Pic {0}", i.ToString()) _
})
Next
Return list
End Function
|
|
To write code in C#
| C# |
Copy Code
|
|---|---|
private List GetDataSource(string urlFormatStr, string linkFormatStr)
{
List list = new List();
for (int i = 1; i < 11; i++)
{
list.Add(new ContentGallery()
{
Content = string.Format(TEXT, string.Format("{0}.The picture one, ", i.ToString())),
LinkUrl = string.Format(linkFormatStr, i.ToString()),
ImgUrl = string.Format(urlFormatStr, i.ToString()),
Caption = string.Format("Pic {0}", i.ToString())
});
}
return list;
}
|
|
This code adds content to the gallery.
To write code in Visual Basic
| Visual Basic |
Copy Code
|
|---|---|
Public Class ContentGallery
Public Property Content() As String
Get
Return m_Content
End Get
Set(value As String)
m_Content = Value
End Set
End Property
Private m_Content As String
Public Property ImgUrl() As String
Get
Return m_ImgUrl
End Get
Set(value As String)
m_ImgUrl = value
End Set
End Property
Private m_ImgUrl As String
Public Property LinkUrl() As String
Get
Return m_LinkUrl
End Get
Set(value As String)
m_LinkUrl = value
End Set
End Property
Private m_LinkUrl As String
Public Property Caption() As String
Get
Return m_Caption
End Get
Set(value As String)
m_Caption = value
End Set
End Property
Private m_Caption As String
End Class
|
|
To write code in C#
| C# |
Copy Code
|
|---|---|
public class ContentGallery
{
public string Content
{ get; set; }
public string ImgUrl
{ get; set; }
public string LinkUrl
{ get; set; }
public string Caption
{ get; set; }
}
|
|
Run the application and observe that the C1Gallery control is data bound and several images appear in the gallery control.