جابه جایی یک کنترل در پروژه کامپایل شده در سی شارپ
سلام و عرض ادب خدمت اساتید گرامی
دوستان چطوری می توان یه پروژه در سی شارپ نوشت که بعد از کامپایل کاربر امکان جابه جایی کنترل ها رو داشته باشه به عنوان مثال من در پروژه م یه دکمه تعریف کردم که پایین فرمم قرار داره حالا من میخام اینو خود کاربر با ماوس درگ کنه به تمام نقاط مختلف فرم ممنون میشم راهنمایی کنید
3 پاسخ
یدونه فایل براتون پیوست کردم از این فایل استفاده کنید
یک کلاسی به اسم ControlMover در فضای نام helper ایجاد شده است. در این کلاس متدی به اسم Init به صورت استاتیک تعریف شده است که 3 بار Overload شده است.
در فرم اصلی در صورتی که بخواهیم هر کنترلی را قابل درگ کردن کنیم باید کنترل مورد نظر را به تابع Init به عنوان پارامتر ارسال نماییم.
در تابع Init به هر کدوم از کنترل ها سه رویداد MouseUp , MouseDown , MouseMove اختصاص داده می شود که عمل drag کردن را کنترل می کند.
Helper.ControlMover.Init(this.button1);
فایل پیوست شده
برای این که کنترل شما به حالت قبل بر نگرده باید از دیتابیس یا فایل های xml بهره بگیرید و نام هر کنترل رو بگیرید و Location اون روسیو کنید وقتی فرم بالا میاد توی فرم لود بر اساس نود هایی که هست موقعیت اونارو تنظیم کنید
سلام خدمت شما
بله هم تو درگ کردن هم اینکه اگه برنامه بسته شد موقعیت کنترل ها به حالت پیش فرض بر نگرده یعنی موقعیت کنترل ها همون موقعیتی باشه که توسط کاربر تغییر کرده ممنون میشم راهنمایی کنید
سلام، وقت بخیر
سوالتون کلی هست، تو کدوم بخش مشکل دارید؟ Drag Drop کردن یا ذخیره و بازیابی موقعیت کنترل هاتون؟