Подтвердить что ты не робот

Открытие формы на С# без фокуса

Я создаю некоторые тосты на основе сверху, как формы, и когда я их открываю, я бы хотел, чтобы они не отвлекали фокус от других форм при их открытии. Как я могу это сделать?

Спасибо

4b9b3361

Ответ 1

protected override bool ShowWithoutActivation
{
    get
    {
        return true;
    }
}

Отмените это свойство в своем коде формы, и оно должно сделать трюк для вас.

Ответ 2

Мне понадобилось несколько минут, используя информацию Адама и Аарона выше, но я, наконец, получил ее для работы. Единственное, что мне нужно было сделать, это убедиться, что для свойства Top Most установлено значение false. Вот код, который я использовал...

    protected override bool ShowWithoutActivation { get { return true; } }

    protected override CreateParams CreateParams
    {
        get
        {
            //make sure Top Most property on form is set to false
            //otherwise this doesn't work
            int WS_EX_TOPMOST = 0x00000008;
            CreateParams cp = base.CreateParams;
            cp.ExStyle |= WS_EX_TOPMOST;
            return cp;
        }
    }