• سوال در مورد ساخت UserControl برای تغییر شکل فرم در سی شارپ
    #1
    Note 
    سلام من یک فرم با استفاده از عکس و چیزای دیگه توی UserControl ساختم
    اما وقتی گزینه ی FormBorderStyleـه فرمم رو None میکنم و این یوزر کنترل رو اضافه میکنم ، و بعد برنامه رو اجرا میکنم ، فرم رو حرکت نمیده و یوزر کنترل رو داخل خود فرمِ اصلی حرکت میده !
    نمیشه کاری به جز اینکه تو فرم اصلی کدی نوشته شه ، فرم رو با استفاده از همین یوزر کنترل حرکت داد ؟

    ممنون

    پاسخ
    #2
    Note 
    درود

    [CSHARP]
    using System.Runtime.InteropServices;
    [/CSHARP]

    [CSHARP]
    public const int WM_NCLBUTTONDOWN = 0xA1;
    public const int HT_CAPTION = 0x2;

    [DllImportAttribute("user32.dll")]
    public static extern int SendMessage(IntPtr hWnd, int Msg, int wParam, int lParam);
    [DllImportAttribute("user32.dll")]
    public static extern bool ReleaseCapture();

    private void userControl11_MouseDown(object sender, MouseEventArgs e)
    {
    if (e.Button == MouseButtons.Left)
    {
    ReleaseCapture();
    SendMessage(Handle, WM_NCLBUTTONDOWN, HT_CAPTION, 0);
    }
    }
    [/CSHARP]

    موفق باشید.

    پاسخ
    #3
    Note 
    ممنون اما بازم همون جوریه !

    پاسخ
    #4
    Note 
    این کدو روی هر کنترلی بذارید کار میکنه و تست شده.
    یوزر کنترل در حالت عادی تو فرم حرکت نمیکنه احتمالا خودتون کدی نوشتید که اینطوری میشه.
    اگر نمیتونید پیداش کنید پروژه رو ضمیمه کنید.

    پاسخ
    #5
    Note 
    سلام بفرمایید :

    ClassLibrary1

    پاسخ
    #6
    Note 
    سلام
    اشتباه من بود! یوزر کنترل handle جداگانه ای داره بخاطر همینه که خودش تو فرم جا به جا میشه. برای اینکه درست بشه باید بگیم handle والد رو بگیر. البته کد بالا درسته اما برای استفاده در یوزر کنترل درست نیست.
    پس کد
    [CSHARP]
    SendMessage(Handle, WM_NCLBUTTONDOWN, HT_CAPTION, 0);
    [/CSHARP]
    رو به این کد تغییر بدید:
    [CSHARP]
    SendMessage(Parent.Handle, WM_NCLBUTTONDOWN, HT_CAPTION, 0);
    [/CSHARP]
    موفق باشید :winksmiley02:

    پاسخ
    ایجاد موضوع جدید   پاسخ به موضوع  

    موضوعات مرتبط با این موضوع...
    موضوع نویسنده پاسخ بازدید آخرین ارسال
    Note کتاب آموزش Parse کردن یک خبر خوان وردپرسی برای ویندوزفون The Arrow 0 1,419 23-04-2015 ساعت 09:24
    آخرین ارسال: The Arrow
    Note سوال ساخت تقویم فارسی در ویندوز 8.1 The Arrow 2 1,466 16-01-2015 ساعت 00:32
    آخرین ارسال: The Arrow
    Note میزان استفاده از رم با UserControl The Arrow 4 1,150 20-11-2014 ساعت 20:58
    آخرین ارسال: The Arrow
    Note دیتابیس SQLite در سی شارپ The Arrow 3 3,145 07-11-2014 ساعت 22:40
    آخرین ارسال: VBProgrammer
    Note FileAssociation در سی شارپ The Arrow 1 719 05-11-2014 ساعت 12:32
    آخرین ارسال: SOFTAFZAR
    Note آموزش کامل سی شارپ (ویدئو) xMAN 2 848 02-10-2014 ساعت 12:50
    آخرین ارسال: xMAN
    Note explorer سی شارپ cMan 1 607 30-08-2014 ساعت 12:07
    آخرین ارسال: SOFTAFZAR
    Note پیدا کردن متن در سی شارپ arfanz 7 1,243 27-08-2014 ساعت 01:10
    آخرین ارسال: The Arrow
    Note برنامه نویسی موازی با سی شارپ xMAN 0 549 05-08-2014 ساعت 12:01
    آخرین ارسال: xMAN
    Note جستجو در یک متن در سی شارپ arfanz 12 2,878 16-07-2014 ساعت 09:32
    آخرین ارسال: Stack OverFlow

    کاربرانِ درحال بازدید از این موضوع:   1 مهمان