PDA

View Full Version : چرا در VS2008 کليک کردن روي Button به محيط #C نمي رود



spicirmkh
دوشنبه 11 آذر 1387, 08:48 صبح
سلام
در VS2005 وقتي روي Button کليک مي کرديم به محيط #C مي رفت اما در S2008 کليک کردن روي Button به محيط #C نمي رود

آيا در VS2008 مشکلاتي هم وجود دارد
آيا مي شود با اطمينان از Vs2005 به Vs2008 رفت

با تشکر

Alireza_Salehi
دوشنبه 11 آذر 1387, 08:55 صبح
در VS2005 وقتي روي Button کليک مي کرديم به محيط #C مي رفت اما در S2008 کليک کردن روي Button به محيط #C نمي رود

با DoubleClick البته!

آيا در VS2008 مشکلاتي هم وجود دارد
آيا مي شود با اطمينان از Vs2005 به Vs2008 رفت
مشکلی نیست، شک نکنید، همین الان هم دیر شده!

spicirmkh
دوشنبه 11 آذر 1387, 09:47 صبح
با DoubleClick البته!

مشکلی نیست، شک نکنید، همین الان هم دیر شده!


وفتي DoubleClick مي کنم بجاي #C به محيط HTML مي رود امکان است نسخه V2008 مشکل داشته باشد

sheitoonbala
دوشنبه 11 آذر 1387, 10:38 صبح
سلام، دوستمون حق داره. توی 2005 وقتی یه HTML button رو "runat="server می کنیم با دابل کلیک تابع button1_serverclick رو توی #C باز می کنه، ولی توی 2008 با اینکه "runat="server هم می ذاریم باز هم تابع button1_onClick رو توی خود aspx source باز می کنه. مشکل چیه؟

odiseh
دوشنبه 11 آذر 1387, 11:38 صبح
سلام، دوستمون حق داره. توی 2005 وقتی یه HTML button رو "runat="server می کنیم با دابل کلیک تابع button1_serverclick رو توی #C باز می کنه، ولی توی 2008 با اینکه "runat="server هم می ذاریم باز هم تابع button1_onClick رو توی خود aspx source باز می کنه. مشکل چیه؟

من امتحان کردم. دوستان حق دارن. حتی با runat=server انگار نمی تونه یه htmlInputButton رو به یه webServerControl تبدیل کنه.
این پیغامو میده:

Unable to cast object of type 'System.Web.UI.HtmlControls.HtmlInputButton' to type 'System.Web.UI.WebControls.Button'

emad_67
دوشنبه 11 آذر 1387, 11:53 صبح
من امتحان کردم. دوستان حق دارن. حتی با runat=server انگار نمی تونه یه htmlInputButton رو به یه webServerControl تبدیل کنه.
این پیغامو میده:

Unable to cast object of type 'System.Web.UI.HtmlControls.HtmlInputButton' to type 'System.Web.UI.WebControls.Button
شما ظاهرا اومدی کنترل html رو به کنترل Button سمت سرور تبدیل کردی. شما نمیتونی با اضافه کردن runat="server" کنترل رو به کل ماهیش رو عوض کنی. htmlInputButton یه کلاس هست و Button هم یک کلاس و ربطی به هم ندارن. با اضافه کردن runat فقط میتونی به اون کنترل html در سمت سرور هم دسترسی داشته باشی.

spicirmkh
دوشنبه 11 آذر 1387, 12:25 عصر
من از کنترل استاندارد Button استفاده کرده ام نه HTML

Alireza_Salehi
دوشنبه 11 آذر 1387, 19:03 عصر
اگر وقتی کلیک میکنید به HTML میرود و این را میبینید:


<script runat="server">
protected void Button1_Click(object sender, EventArgs e)
{
}
</script>

شمادر حالت Inline دارید کار میکنید و مشکلی نیست. کافیه وقتی یک صفحه جدید اضافه می کنید Place code in seprate file رو تیک بزنید.

sheitoonbala
دوشنبه 11 آذر 1387, 19:26 عصر
سلام. دکمه یه input Button هست. کدش هم :

<input id="Button1" type="button" runat="server" value="button" />
توی 2005 وقتی روی این دابل کلیک میکنیم تابع button1_serverclick رو توی #C باز می کنه، ولی توی 2008 تابعی به نام button1_onClick رو به این صورت

<head runat="server">
<title></title>

<script language="javascript" type="text/javascript">
// <!CDATA[

function Button1_onclick() {

}

// ]]>
</script>
</head>

توی خود aspx source باز می کنه. مشکل چیه؟

milade
دوشنبه 11 آذر 1387, 20:16 عصر
سلام. دکمه یه input Button هست. کدش هم :
کد:
<input id="Button3" type="button" runat="server" value="button" />
توی 2005 وقتی روی این دابل کلیک میکنیم تابع button1_serverclick رو توی #C باز می کنه، ولی توی 2008 تابعی به نام button1_onClick رو توی خود aspx source باز می کنه. مشکل چیه؟

ببخشیدا ولی تا جایی که من برنامه نویسی کردم این همون دکمه سمت کلاینته که خاصیت runat=server گرفته و سروری شده و یه کنترل استاندارد asp.net این طوری هست:

<asp:Button ID="Button1" runat="server" Text="Button" />
موفق باشید

sheitoonbala
سه شنبه 12 آذر 1387, 00:07 صبح
من که نگفته بودم asp button هست.عرض کرده بودم یه html input button هست که "runat="server رو واسش گذاشتیم ولی باز هم تابع اون توی aspx source باز میشه.

odiseh
چهارشنبه 13 آذر 1387, 11:52 صبح
طبق گفته دوستمون با اضافه شدن runat=server فقط می تونیم به اون کنترل html ای در سمت سرور دسترسی داشته باشیم. اصلا حسن این دسترسی چیه؟ چرا event ای به نامه OnServerClick رو خواهیم داشت؟ اگه تبدیل نمیشه پس این event چه معنی میده؟

sheitoonbala
پنج شنبه 14 آذر 1387, 11:05 صبح
میشه بفرمایید داخل VS 2008 اگه بخوایم با کلیک روی یه html button یه تابع #C سمت server اجرا بشه چه کدی رو کجا باید بنویسیم. ممنون

sheitoonbala
جمعه 15 آذر 1387, 00:35 صبح
چرا کسی جواب نداد ؟؟؟؟

milade
جمعه 15 آذر 1387, 07:39 صبح
سلام
وقتی یه html button رو سروری می کنیم فقط و فقط میتونیم به بعضی از خاصیتهای اون در سمت سرور دسترسی داشته باشیم مثلا value رو تغییر بدیم و از این کارا و نمیشه که براش یه event ساخت در سرور و فقط میشه مثل همون قدیما که سروری نشده بود یه توابع جاوایی رو براش ساخت
موفق باشید

sheitoonbala
دوشنبه 18 آذر 1387, 00:50 صبح
سلام.پس چطور توی 2005 می شه؟

milade
دوشنبه 18 آذر 1387, 04:19 صبح
چی در 2005 میشه؟!
یه نمونه کد سا یه سورس بزارید ببینیم

sheitoonbala
دوشنبه 18 آذر 1387, 15:00 عصر
توی 2005 vs میشه پشت یه دکمه html ی با گذاشتن "runat="server و دابل کلیک روی دکمه توی محیط #C براش کد نوشت. ولی توی vs2008 نمیشه...

milade
دوشنبه 18 آذر 1387, 15:28 عصر
نمیدونم!
ولی شاید این امکان برداشته شده
(مثل سایر خراب کاری های میکروسافت:قهقهه:)
در کل کار اصولی هم نیست
اخه یعنی چی بیای یه کنترل html رو سروریس کنی و براش کد بنویسی .خوب از همون کنترل asp.net استفاده میکردی