PDA

View Full Version : نمایش عکس در Gridview



poorhasan
جمعه 24 اردیبهشت 1389, 22:54 عصر
با سلام خدمت دوستان
چطور میشه در داخل گرید ویو مانند شکل زیر هم عکس و هم تعدادی فیلد دیگر از بانک اطلاعاتی را قرار داد

Peyman.Gh
جمعه 24 اردیبهشت 1389, 23:02 عصر
http://www.barnamenevis.org/forum/showpost.php?p=880243&postcount=6

poorhasan
شنبه 25 اردیبهشت 1389, 08:50 صبح
با تشکر از توجه تون
اون آموزش رو دانلود کردم خیلی مفید بود ولی گرید ویو رو به اون شکلی که تو پست اول دادم نمیتونم تغییر بدم چطور میشه این کارو کرد ؟؟؟

z_bluestar
شنبه 25 اردیبهشت 1389, 08:56 صبح
با Template Column هـا , اول اون چیزی رو که می خواین Design کنید و بعد اونهــا رو Bind کنید

mohsen.nsb44
شنبه 25 اردیبهشت 1389, 09:14 صبح
http://www.barnamenevis.org/forum/showpost.php?p=880243&postcount=6
سلام ممنون از اينكه به دوستانتون كمك مي كنيد ميشه در مورد linq to sql يه توضيحي بدين؟ تو اين فيلم از كلاسي كه استفاده كردين موقع add item چنين كلاسي رو سيستم من نداره چطوري بايد به item هام اضافش بكنم؟

poorhasan
شنبه 25 اردیبهشت 1389, 09:16 صبح
با Template Column هـا , اول اون چیزی رو که می خواین Design کنید و بعد اونهــا رو Bind کنید

میشه با عکس اونو آموزش بدید آخه هرچی نگاه کردم Template Column رو ندیدم یه چیزی مثل شکلای زیر میاد ولی نمیتونم به اون فرمی که می خوام طراحی کنم

z_bluestar
شنبه 25 اردیبهشت 1389, 09:47 صبح
این یه نمـونه کد هست

<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" Width="500px">
<Columns>
<asp:TemplateField>
<ItemTemplate>
<table class="style1" dir="rtl">
<tr>
<td valign="top" align="right">
نام کالا :<asp:Label ID="Label1" runat="server" Text='<% Eval("ProductName") %>'></asp:Label><br />
قیمت :<asp:Label ID="Label2" runat="server" Text='<% Eval("ProductPrice") %>'></asp:Label>
</td>
<td valign="top" width="150px">
<asp:Image ID="image" runat="server" Height="150px" Width="150px" ImageUrl='<% Eval("ProductImage") %>' />
</td>
</tr>
</table>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>

Vahid_moghaddam
شنبه 25 اردیبهشت 1389, 09:47 صبح
به همین شکلی که انجام دادید درسته. در itemtemplate کنترل هایی رو که می خواید اضافه کنید و اونها رو به فیلدهای متناظرشون bind کنید. تمام این کنترل ها رو در یک div قرار بدید و با css طوری که می خواید ظاهر و محل قرار گیریشون رو طراحی کنید. در صفحه aspx شما چیزی شبیه زیر دارید:


<Columns>
<asp:TemplateField>
<ItemTemplate>
<div>
<asp:Image ... />
.
.
</div>
</ItemTemplate>
</asp:TemplateField>
</Columns>

poorhasan
شنبه 25 اردیبهشت 1389, 12:50 عصر
خیلی ممنون از دوستان موفق درستش کنم خیلی دمتون گرم
یه چیز دیگم اینکه نمی شه به راحتی لیبل و تکست باکس و ایمیج باکس و هر کنترل دیگه که روی فرم قرار میگیره رو به هر جایی که خواستیم تغییر مکان دهیم علت چیه ؟

mohanddes
شنبه 25 اردیبهشت 1389, 13:01 عصر
سلام.
در نسخه هاي قبلي ASP.NET مي شد مانند C# مثلا يك Button را به هرجايي منتقل كنيد ولي مشكل اينجا بود كه در بعضي از مرورگرها جاي اين button عوض ميشد و ظاهر سايت را به هم مي ريخت .
براي همين راحت ترين و ساده ترين راه حل ممكن استفاده از Table هاست تا جاي دقيق كنترل ها را مشخص كنه .
كه استفاده بيش از حد جداول هم سرعت سايت را كم مي كنه .

Peyman.Gh
شنبه 25 اردیبهشت 1389, 13:01 عصر
کنترل مورد نظر را انتخاب کنید و از منوی Format --> Position
و در Absolute , Positioning Style را انتخاب کنید.

mohanddes
شنبه 25 اردیبهشت 1389, 13:06 عصر
اين راه حل كاملا درسته ...
ولي دقيقا نميشه جاي اون كنترلي كه مد نظر ماست را در صفحه مرورگر مشاهده كرد.

Vahid_moghaddam
شنبه 25 اردیبهشت 1389, 13:23 عصر
به جای table از div استفاده کنید. div ها بسیار انعطاف پذیر تر هستند.

Vahid_moghaddam
شنبه 25 اردیبهشت 1389, 13:25 عصر
اين راه حل كاملا درسته ...
ولي دقيقا نميشه جاي اون كنترلي كه مد نظر ماست را در صفحه مرورگر مشاهده كرد.

می شه توضیح بدید؟ دقیقا منظورتون چیه؟

poorhasan
شنبه 25 اردیبهشت 1389, 13:49 عصر
کنترل مورد نظر را انتخاب کنید و از منوی Format --> Position
و در Absolute , Positioning Style را انتخاب کنید.
منظورتون اینه بود دیگه !

layout---->position----->absolute

دستتون درد نکنه درست شد
استفاده از این که مشکلی ایجاد نمیکنه نه ؟

sjhosseini
شنبه 25 اردیبهشت 1389, 14:31 عصر
توی مرورگرهای مختلف امتحان کن

mohanddes
شنبه 25 اردیبهشت 1389, 16:35 عصر
می شه توضیح بدید؟ دقیقا منظورتون چیه؟

مثلا ما با اين روش يك BUTTON را دقيقا وسط صفحه قرار ميديم ولي در خروجي اين كنترل به جاي ديگري از صفحه منتقل ميشه و مطابق با خواست ما به نمايش در نمياد براي همين به قول شما از div هم ميشه استفاده كرد ...

poorhasan
یک شنبه 26 اردیبهشت 1389, 12:22 عصر
با سلام
دوستان لطفا کمکم کنید فرم ها به صورت شکل اولی طراحی می کنم ولی هنگام اجرا به شکل دوم در میاد
هم ظاهرش بهم میخوره هم اطلاعاتی که از بانک خونده فقط یه رکورد رو نمایش می ده در صورتی که سه تا رکورد تو بانک هست همون رکورد اخرو نمایش می ده

Vahid_moghaddam
یک شنبه 26 اردیبهشت 1389, 13:07 عصر
قسمت مربوط به گریدویو در aspx رو بذارید

alex_barry2003
جمعه 30 تیر 1391, 20:46 عصر
سلام.
وقتی imagebox را به فیلد عکس که اسم عکس داخلش ذخیره شده بایند می کنم. عکس را نشون نمی ده.
اینم کدی که نوشتم :
Eval("img", "pictures/{0}")

عکس داخل فولدر pictures هستش...

TeacherMath
شنبه 31 تیر 1391, 11:51 صبح
Eval("img", "~/pictures/{0}")

alex_barry2003
سه شنبه 03 مرداد 1391, 17:18 عصر
عکسی را می خوام داخل گرید ویو نشون بدم.
این عکس داخل یه فولدر هستش که نام این فولدر همنام یکی از فیلدهای دیتابیس هستش.
من این کد را براش نوشتم ولی عکس رو نشون نمیده . نمی دونم مشکلش در کجاست ...

Eval("img", "~/"+Eval("username")+"/{0}")

img : فیلدیه که نام عکس توش ذخیره شده.
username : فیلدیه که همنام فولدر هستش.
امیدوارم کسی منظور منو بفهمه .... چون نمی دونم چطوری بیان کنم...