This give proper output...
protected void BindDataList()
{
DataTable dt = new DataTable();
XmlDocument xmldoc = new XmlDocument();
xmldoc.Load(Server.MapPath("~/" + "XML/album.xml"));
XmlNodeList nodelist = xmldoc.GetElementsByTagName("Album");
ArrayList listItems = new ArrayList();
dt.Columns.Add("Name", typeof(string));
for (int i = 0; i < nodelist.Count; i++)
{
DataRow dtrow = dt.NewRow();
dtrow["Name"] = nodelist[i].Attributes["Name"].Value;
dt.Rows.Add(dtrow);
}
dtlist.DataSource = dt;
dtlist.DataBind();
}
// aspx page
<asp:DataList ID="dtlist" runat="server" RepeatColumns="3" CellPadding="5">
<ItemTemplate>
<asp:LinkButton ID="LinkButton3" runat="server" CommandArgument='<%#Eval("Name") %>' Text='<%#Eval("Name") %>'></asp:LinkButton>
</ItemTemplate>
<ItemStyle BorderColor="Brown" BorderStyle="dotted" BorderWidth="3px" HorizontalAlign="Center" VerticalAlign="Bottom" />
</asp:DataList>