PDA

View Full Version : ارتباط تری ویو و دیتا لیست



faniuta
دوشنبه 01 خرداد 1391, 14:39 عصر
با سلام
من در صفحه محصولاتم، یه تری ویو و یه دیتالیست دارم که می خوام اطلاعات نمایش داده شده در دیتا لیست براساس انتخاب در تری ویو باشه.اطلاعات تری ویو رو که شامل گروه بندی اصلیه، دستی وارد کردم.و در template دیتالیست یه هایپرلینک و image btn گذاشتم. توی دیتا بیسم دو تا جدول دارم که اولی مربوط به گروه بندی محصولاته (Gname,Gid,Gpic) و دومی اطلاعات دقیق تر محصولاته(Name,Producer,Size,Gid) در اولین باری که صفحه لود میشه مشکلی ندارم.چون هایپر لینکم نام گروه های اصلی محصولات رو نشون میده. اما نمی دونم چه طور میشه این Eval ای که برای هایپر هست رو بعد از انتخاب نود های تری ویو به Eval("Name تغییر بدم تا انواع محصول انتخاب شده رو در دیتالیست نشون بده.مثلا وفتی رو محصول1،کلیک می کنه به هر تعدادی که از اون داشته باشم در دیتا لیست می آره و در هایپر لینک به جای اینکه نام اون ها رو بنویسه ،مینویسه محصول 1.

<asp:DataList ID="DataList1" runat="server" RepeatColumns="4">
<ItemTemplate>
<table class="style1">
<tr>
<td>
<asp:ImageButton ID="ImageButton1" runat="server" Height="100px"
Width="100px" />
</td>
</tr>
<tr>
<td>
<asp:HyperLink ID="HyperLink1" runat="server"
NavigateUrl='<%# Eval("Gid","show.aspx?Code={0}") %>'
Text='<%# Eval("Gname") %>' Width="150px"></asp:HyperLink>
</td>
</tr>
</table>
</ItemTemplate>
</asp:DataList>
در ایونت زیر هم دیتا سورس دیتا لیست رو تغییر می دم.

protected void TreeView1_SelectedNodeChanged(object sender, EventArgs e)
{
DataSet ds = new DataSet();

ds = GetProductListByProducctKind2(TreeView1.SelectedVa lue);
DataList1.DataSource = ds;
DataList1.DataBind();
}