Attila's profileTuróczy Attila (MCP, MCT...PhotosBlogLists Tools Help

Blog


    December 28

    Az X bezáró gomb letiltása

    Nemrég belefutottam egy olyan apró problémába, hogy az egyik projektnél lekellet tiltanom azt, hogy a felhasználó az X bezáró gombra kattintson és zárja be az alkalmazást. (Nem lehetet használni a FormClose esemenyt egyéb okokból kifolyólag)  Sajnos se propertyt se metódust nem találtam amivel ezt megtudnám csinálni.  Így néhány perc keresgélés után, egy unmanagedes megoldást találtam. Ami az alábbiak szerint működik.image

    Szükség lesz a System.Runtime.InteropServices névtérre.

    using System.Runtime.InteropServices

    Deklarálnunk kell az alábbiakat:

    const int MF_BYPOSITION = 0x400;
    [DllImport("User32")]
    private static extern int RemoveMenu(IntPtr hMenu, int nPosition, int wFlags);
    [DllImport("User32")]
    private static extern IntPtr GetSystemMenu(IntPtr hWnd, bool bRevert);
    [DllImport("User32")]
    private static extern int GetMenuItemCount(IntPtr hWnd);

    Valamint, például a FormLoad eseménybe hivjuk meg az alabbi metódusokat.

    private void MainForm_Load(object sender, EventArgs e)
    {
        IntPtr hMenu = GetSystemMenu(this.Handle, false);
        int menuItemCount = GetMenuItemCount(hMenu);
        RemoveMenu(hMenu, menuItemCount - 1, MF_BYPOSITION);
    }

    December 21

    Visual Studio Tippek a gyorsabb és hatékonyabb fejlesztéshez

    Az alábbi screencastban a Visual Studio 2008 néhány apró trükkjével ismerkedhettek meg, melyekkel a fejlesztés könnyebbé és hatékonyabbá válhat.
    A screencast főleg azoknak szól, akik még csak most ismerkednek meg a Visual Studio nyújtotta lehetőségekkel.