2009-12-14 7 views
0

J'ai un rapport rdlc dans lequel j'ai une table avec 6 colonnes. Parmi ces 6 colonnes, la visibilité des 2e et 4e colonnes est inversée. c'est-à-dire que si la deuxième colonne est visible, la quatrième n'est pas visible et vice versa. Le rapport s'affiche correctement avec ces paramètres.Numéro de cellules de fusion de table de rapport RDLC numéro

Ensuite, une nouvelle ligne a été ajoutée à la table. Toutes les cellules de cette rangée ont été fusionnées et un rectangle a été ajouté à cette rangée. Ensuite, quelques boîtes de texte ont été ajoutées à ce rectangle. Maintenant, lorsque ce rapport est exécuté, l'affichage de la table est perturbé. Une colonne vide affichée avant la dernière colonne et l'en-tête de la dernière colonne apparaît également déplacée.

Après quelques permutations, j'ai mis à zéro le problème réel. Si vous avez une table avec une ligne avec des cellules fusionnées et un rectangle dans les cellules fusionnées, masquer une colonne ne perturbe pas l'affichage, mais si vous ajoutez une zone de texte au rectangle, l'affichage de la table est perturbé comme mentionné ci-dessus .

Est-ce un problème inhérent dans les rapports RDLC ou il me manque quelque chose ici?

Note, les rapports sont exécutés en mode local et l'environnement est Visual Studio 2005.

Répondre

0

Cela semble être défaut ReportViewer. La définition de la propriété cachée d'une colonne à true devrait suffire à obscurcir complètement la colonne. Cependant, dans ce cas, avec sa propriété cachée à vrai, vous devez également définir sa largeur à 0,0 pouces pour l'obscurcir complètement.


Je rejette ma réponse précédente. La solution décrite ci-dessus fonctionne mais présente quelques problèmes.

Une méthode plus appropriée consiste à allouer un nouveau tableau de colonnes à la collection de colonnes de la table de rapports RDLC via la désérialisation, puis à sérialiser le rapport. La désérialisation d'un rapport RDLC l'expose en tant qu'objet. Ce tableau de colonnes contiendra les colonnes de la table d'origine à l'exception de celles qui doivent être cachées. La solution est compliquée mais efficace.