UserControl WPF / XAML qui hérite q'un contrôle existant

Résolu
Afyn Messages postés 608 Date d'inscription samedi 3 août 2002 Statut Membre Dernière intervention 22 décembre 2016 - 11 juin 2008 à 13:30
Afyn Messages postés 608 Date d'inscription samedi 3 août 2002 Statut Membre Dernière intervention 22 décembre 2016 - 12 juin 2008 à 22:02
Bonjour
J'ai essayé de construire un contrôle personnalisé pour WPF qui hérite d'un contrôle ToolBar.
Je suis parti de l'ajout dans le Projet d'un UserControl, J'ai ensuite placé un Contrôle ToolBar
dans le UserControl ... et cela semblait bien fonctionner.
Par contre il est impossible de placer ce UserControl dans un Control ToolBarTray. Il y a
un message d'erreur pour signifier que le ToolBarTray n'accepte pour contrôle enfants que des
contrôles ToolBar.
J'ai essayé d'utiliser la fonction Inhérits dans la classe d'initilisation du UserControl, mais la encore
il y a plein de messages d'erreurs ... (Inherits ToolBar)
Est ce que quelqu'un à déjà fait un contrôle perso ToolBar que l'on peut ensuite positionner dans
un ToolBarTray ?

Merci d'avance pour votre aide
Afyn - Navedac<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" /??>




 
A voir également:

5 réponses

Kevin.Ory Messages postés 840 Date d'inscription mercredi 22 octobre 2003 Statut Membre Dernière intervention 7 janvier 2009 11
12 juin 2008 à 14:20
Salut,
Le nom du control ne changera rien
Il est logique que ton ToolBarTray n'accepte pas de contrôle qui ne sont pas des ToolBar, sinon tu pourrais y mettre ce que tu veux (boutons, textbox...)
Ensuite, ne commence pas par créer un UserControl. Un UserControl hérite de UserControl, donc c'est logique qu'il n'accepte pas un "Inherits ToolBar".
Créé simplement une nouvelle classe comme ceci :

Public Class MyToolBar
    Inherits ToolBar
End Class

MyToolBar sera alors exactement la même chose qu'une ToolBar. A toi de rajouter les fonctions/propriétés que tu souhaite avoir.
3
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
11 juin 2008 à 19:18
salut,

umm... proposition un peu bête mais va savoir...
tu as essayé de nommer ton usercontrol ToolBar ?
(pas l'instance hein)

voilà tout ce que je peux tenter en dotnet
Prenez un instant pour répondre à [infomsg_SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp
0
Afyn Messages postés 608 Date d'inscription samedi 3 août 2002 Statut Membre Dernière intervention 22 décembre 2016
12 juin 2008 à 18:01
Merci pour la réponse.
En fait je cherchais plutot a faire un fichier xaml (MidiToolBar.xaml par ex)
<

UserControl x:Class="MidiToolBar"
   xmlns=http://schemas.microsoft.com/winfx/2006/xaml/presentation
   xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
   <ToolBarTray>
      <ToolBar Width="Auto" Height="Auto">
         <Label Width="Auto" Height="Auto">001
         </Label>
      </ToolBar>
      <ToolBar Width="Auto" Height="Auto">
         Start
         
      </ToolBar>
   </ToolBarTray>

J'ai mis un ToolBar Array dans le UserControl ... mais bon c'est pas exactement ce que je voulais faire !
0
Kevin.Ory Messages postés 840 Date d'inscription mercredi 22 octobre 2003 Statut Membre Dernière intervention 7 janvier 2009 11
12 juin 2008 à 20:57
"mais bon c'est pas exactement ce que je voulais faire !"





Et c'est quoi exactement que tu voudrais faire?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Afyn Messages postés 608 Date d'inscription samedi 3 août 2002 Statut Membre Dernière intervention 22 décembre 2016
12 juin 2008 à 22:02
Je voulais faire un UserControl qui hérite d'un ToolBar mais avec le xaml, de façon à pouvoir placer des controls Button ou Label sur le ToolBar de façon graphique. Mais t'as raison, j'irais aussi en  codant direct comme ça :
Public

Class MidiToolBar 
      Inherits System.Windows.Controls.ToolBar      PublicSubNew()
            Dim Lbl AsNew Windows.Controls.Label
            Lbl.Content = "00001"
            Me.Items.Add(Lbl)
      EndSub
EndClass

et dans la Form :

<Window x:Class="MainForm" 
      xmlns= h ttp://schemas.microsoft.com/winfx/2006/xaml/presentation
      xmlns:x= h ttp://schemas.microsoft.com/winfx/2006/xaml
      xmlns:local="clr-namespace:MimpWpf"
      Title="MainForm" 
      Height="302" 
      Width="497" 
      WindowStyle="ToolWindow">
      <ToolBarTray>
            <local:MidiToolBar>
            </local:MidiToolBar>
      </ToolBarTray>
</Window>

Merci pour tes réponses

Afyn - Navedac
0
Rejoignez-nous