Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Toto téma uvádí následující běžné problémy, ke kterým dochází při vývoji komponent a ovládacích prvků:
Do panelu nástrojů nelze přidat ovládací prvek
Nelze ladit uživatelský ovládací prvek nebo komponentu Windows Forms.
Událost je vyvolána dvakrát v zděděném ovládacím prvku nebo komponentě.
chyba Design-Time: Nepodařilo se vytvořit komponentunázev komponenty
STAThreadAttribute
Ikona komponenty se nezobrazuje v sadě nástrojů
Do panelu nástrojů nelze přidat ovládací prvek
Pokud chcete přidat vlastní ovládací prvek, který jste vytvořili v jiném projektu, nebo ovládací prvek třetí strany do Panel nástrojů, musíte to provést ručně. Pokud aktuální projekt obsahuje ovládací prvek nebo součást, měl by se zobrazit v Panelu nástrojů automaticky. Další informace naleznete v tématu Návod: Automatické naplnění sady nástrojů vlastními komponentami.
Přidání ovládacího prvku do panelu nástrojů
Klikněte pravým tlačítkem myši na panel nástrojů
a v místní nabídce vyberte Zvolit položky .V dialogovém okně Zvolit položky sady nástrojů přidejte komponentu:
Pokud chcete přidat komponentu nebo ovládací prvek rozhraní .NET Framework, klikněte na kartu komponent rozhraní .NET Framework.
– nebo –
Chcete-li přidat komponentu COM nebo ovládací prvek ActiveX, klikněte na kartu komponenty COM.
Pokud je ovládací prvek uveden v dialogovém okně, ujistěte se, že je vybrán, a klikněte na OK.
Ovládací prvek se přidá dopanelu nástrojů
. Pokud ovládací prvek není v dialogovém okně uvedený, postupujte takto:
Klikněte na tlačítko Procházet.
Přejděte do složky, která obsahuje .dll soubor, který obsahuje váš ovládací prvek.
Vyberte soubor .dll a klikněte na Otevřít.
Ovládací prvek se zobrazí v dialogovém okně.
Potvrďte, že je vybrán ovládací prvek, a klepněte na tlačítko OK.
Váš ovládací prvek byl přidán do panelu nástrojů .
Nelze ladit uživatelský ovládací prvek nebo komponentu Windows Forms.
Pokud je váš ovládací prvek odvozený z třídy UserControl, můžete ladit jeho chování za běhu pomocí testovacího kontejneru. Další informace naleznete v tématu Jak na to: Testování chování uživatelského ovládacího prvku Run-Time.
Jiné vlastní ovládací prvky a komponenty nejsou samostatné projekty. Musí být hostované aplikací, jako je například projekt Windows Forms. Pokud chcete ladit ovládací prvek nebo komponentu, musíte ho přidat do projektu Modelu Windows Forms.
Ladění ovládacího prvku nebo komponenty
V nabídce Sestavení klikněte na Sestavit řešení a sestavte řešení.
V nabídce Soubor zvolte Přidata pak Nový projekt a přidejte do aplikace testovací projekt.
V dialogovém okně Přidat nový projekt zvolte aplikace systému Windows pro typ projektu.
V Průzkumníku řešeníklikněte pravým tlačítkem myši na uzel Reference nového projektu. V místní nabídce klikněte na Přidat referenci pro přidání reference na projekt obsahující ovládací prvek nebo součást.
Vytvořte instanci ovládacího prvku nebo komponenty v testovacím projektu. Pokud je vaše komponenta v Toolbox, můžete ji přetáhnout na plochu návrháře nebo můžete vytvořit instanci programově, jak je znázorněno v následujícím příkladu kódu.
Dim Component1 As New MyNeatComponent()MyNeatComponent Component1 = new MyNeatComponent();Ovládací prvek nebo komponentu teď můžete ladit obvyklým způsobem.
Další informace o ladění naleznete v tématu Ladění v sadě Visual Studio a Návod: Ladění vlastních ovládacích prvků Windows Forms v době návrhu.
Událost je vyvolána dvakrát v zděděném ovládacím prvku nebo komponentě.
Důvodem je pravděpodobně duplikovaná klauzule Handles. Další informace naleznete v tématu Řešení potíží s zděděnými obslužnými rutinami událostí v jazyce Visual Basic.
chyba Design-Time: Nepodařilo se vytvořit komponentu Název komponenty
Součást nebo ovládací prvek musí poskytovat konstruktor bez parametrů. Když návrhové prostředí vytvoří instanci vaší komponenty nebo ovládacího prvku, nepokouší se poskytnout žádné parametry pro přetížené konstruktory, které přijímají parametry.
STAThreadAttribute
STAThreadAttribute informuje modul CLR (Common Language Runtime), že Windows Forms používá model apartmánu s jedním vláknem. Pokud tento atribut nepoužijete na metodu Main vaší aplikace Windows Forms, možná si všimnete nezamýšleného chování. Například obrázky na pozadí se nemusí zobrazovat pro ovládací prvky, jako je ListView. Některé ovládací prvky mohou také vyžadovat tento atribut pro správné chování automatického dokončování a přetahování.
Ikona komponenty se nezobrazuje v sadě nástrojů
Pokud použijete ToolboxBitmapAttribute k přidružení ikony k vlastní komponentě, rastrový obrázek se nezobrazí v sadě nástrojů pro automaticky generované součásti. Pokud chcete zobrazit rastrový obrázek, obnovte ovládací prvek prostřednictvím dialogového okna Zvolit položky panelu nástrojů. Další informace naleznete v tématu Postupy: Poskytnutí rastrového obrázku panelu nástrojů pro ovládací.
Viz také
.NET Desktop feedback