azrzh
-
26 févr. 2020 à 16:34
Whismeril
Messages postés18416Date d'inscriptionmardi 11 mars 2003StatutContributeurDernière intervention 1 juin 2023
-
27 févr. 2020 à 18:41
Bonjour,
J'aimerais que quand on clique sur le bouton enregistrement dans le panel bleu, que l'autre bouton enregistré soit exécuté. En sachant que ce bouton que je souhaite relier est dans un usercontrol situé dans un panel affiché avec un tableLayoutPanel. Et l'autre bouton enregistrement dans le panel bleu se situe dans une form qui est le main.
Du coup dans le main, il y a:
-bindingSourceMain relié au fichier main du projet
-bouton "enregistrement"(panel bleu) relié aux bindingSourceMain
Dans le fichier Alimentation il y a:
-bindingSourceAlim relié à mainBindingSource
-mainBindingSourcerelié au fichier main du projet
-bouton "enregister" relié à mainBindingSource
Et je ne sais pas quoi faire ensuite, car j'ai relié que les propriété autoscroll (car de ce que j'ai compris, on s'en fiche de quelle propriété liée)
oui le fichier main est un winform et l'autre fichier alimentation est un usercontrol
Du coup y a deux buttons que je veux relier, l'un dans le main connecter a bindingSourceMain et l'autre dans le fichier alimentation connecter a mainBindingSource
Whismeril
Messages postés18416Date d'inscriptionmardi 11 mars 2003StatutContributeurDernière intervention 1 juin 2023624 Modifié le 27 févr. 2020 à 18:34
Bon, j'ai pas réussi exactement ce que tu veux (enfin je crois).
Je te propose ceci, d'abord la classe métier Truc
public class Truc
{
private static int compteur = 0;
private int numero;
public Truc()
{
numero = ++compteur;
}
public void Action()
{
MessageBox.Show(string.Format("{0} sur {1}", numero, compteur));
}
public override string ToString()
{
return string.Format("Truc numéro {0}", numero);
}
}
Ensuite un contrôle Machin, avec un bouton et un label
public partial class Machin : UserControl, INotifyPropertyChanged
{
public Machin()
{
InitializeComponent();
}
private Truc truc;
public Truc LeTruc
{
get { return truc; }
set
{
if (truc == value)
return;
truc = value;
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs("LeTruc"));
label1.Text = truc.ToString();
}
}
public event PropertyChangedEventHandler PropertyChanged;
private void button1_Click(object sender, EventArgs e)
{
LeTruc.Action();
}
}
J'ai pas su binder sur la propriéte LeTruc du contrôle, et donc j'ai fait comme ça
Quand j'étais petit, la mer Morte n'était que malade.
George Burns
Whismeril
Messages postés18416Date d'inscriptionmardi 11 mars 2003StatutContributeurDernière intervention 1 juin 2023624 27 févr. 2020 à 18:35
Whismeril
Messages postés18416Date d'inscriptionmardi 11 mars 2003StatutContributeurDernière intervention 1 juin 2023624
>
Whismeril
Messages postés18416Date d'inscriptionmardi 11 mars 2003StatutContributeurDernière intervention 1 juin 2023 Modifié le 27 févr. 2020 à 18:41
27 févr. 2020 à 08:39
je les ai faites avec le concepteur de visual studio et elles sont toutes reliés sur la propriété autoscroll.