2010-04-27 5 views
0

J'ai écrit quelques applications de formulaires C# qui utilisent beaucoup des mêmes données/objets qui seraient mieux combinés. Je me rends compte que je pourrais utiliser des formulaires modaux pour lancer chacun d'entre eux, mais où devrais-je indiquer .dll et d'autres ressources, sur le formulaire parent? ou sur l'autre forme si nécessaire?formes modales et données partagées,

+2

Je ne comprends pas pourquoi le fait qu'un formulaire soit modal est pertinent pour votre problème. –

Répondre

1

Les choses que vous pouvez utiliser:

  • objets statiques;
  • motif singleton;
  • passer des objets dans des constructeurs de formulaires ou des propriétés;
  • utiliser des formes héritées, en gardant dans la base toutes les propriétés communes.
+0

Un motif n'est pas une chose. – MusiGenesis

+0

Pour montrer une chose, vous montrez la chose. Pour montrer un motif, vous montrez un tas d'autres choses parce que vous * ne pouvez pas * montrer le motif lui-même. Par conséquent, un modèle n'est pas une chose dans le même sens qu'une chose est une chose. – MusiGenesis

+0

Cela aurait du sens en français. :) – MusiGenesis

0

Une solution rapide peut sembler utiliser des objets singleton/statiques; mais cela peut causer des problèmes si plusieurs utilisateurs accèdent à vos objets métier.

L'autre chose que vous pouvez faire est que vous ajoutez vos objets dans le formulaire principal, et appelez les objets de formulaire maître à partir des formulaires enfants.

Tout comme une note de côté, vous pouvez aussi penser à un 3 tier approach:

  1. La couche de données, le cas échéant que vous avez.
  2. Vos objets métier; la couche logique métier.
  3. La couche de présentation;

Accédez à votre nomenclature par l'intermédiaire de votre présentation et modifiez-la, quelle que soit l'adresse (quelle forme) et quelle que soit (définie dans votre BLL). Utilisez la couche de données pour manipuler votre entreprise.

+0

ce qui devrait être une BLL? – serhio

+0

@serhio: Couche logique métier/domaine (http://en.wikipedia.org/wiki/Business_logic_layer); une partie de l'architecture à plusieurs niveaux (http://en.wikipedia.org/wiki/Multitier_architecture). –