ReportViewer - modifier de la barre d'outils?
N'importe qui ont de bonnes idées de comment modifier la barre d'outils pour les WinForms version de la Barre d'outils ReportViewer?
C'est, je veux supprimer des boutons et varius, mais il semble que la solution est de créer une toute nouvelle barre d'outils au lieu de modifier celui qui est là.
Comme, j'ai dû enlever l'exportation vers excel, et il l'a fait de cette façon:
//Disable excel export
foreach (RenderingExtension extension in lr.ListRenderingExtensions()) {
if (extension.Name == "Excel") {
//extension.Visible = false; //Property is readonly...
FieldInfo fi = extension.GetType().GetField("m_isVisible", BindingFlags.Instance | BindingFlags.NonPublic);
fi.SetValue(extension, false);
}
}
Un peu trickysh si vous me demandez..
Pour enlever toolbarbuttons, une voie possible était de parcourir le tableau de Contrôle à l'intérieur de la ReportViewer et modifier la propriété Visible pour les boutons à cacher, mais il est remis tous les temps, de sorte qu'il n'est pas une bonne façon..
QUAND dois-MS venir avec une nouvelle version btw?
OriginalL'auteur neslekkiM | 2008-09-22
Vous devez vous connecter pour publier un commentaire.
Il y a beaucoup de propriétés pour définir les boutons sur lesquels vous aimeriez voir.
Par exemple ShowBackButton, ShowExportButton, ShowFindControls, et ainsi de suite. Vérifier dans le aider, tout commence avec "Show".
Mais vous avez raison, vous ne pouvez pas ajouter de nouveaux boutons. Vous devez créer votre propre barre d'outils pour ce faire.
Que voulez-vous dire à propos de la nouvelle version? Il y a déjà un 2008 SP1 version de celui-ci.
OriginalL'auteur Biri
Yeap. Vous pouvez le faire en un peu délicat.
J'avais une tâche à ajouter plus de facteurs d'échelle de zoom de rapport. J'ai fait de cette façon:
OriginalL'auteur
Obtenir la barre d'outils de contrôle ReportViewer:
Ajouter de nouveaux éléments:
OriginalL'auteur Chris
Une autre façon serait de manipuler le code HTML généré lors de l'exécution via javascript. Ce n'est pas très élégant, mais il vous donne le plein contrôle sur le code HTML généré.
Il n'y a rien de compliqué à ce sujet. Je suis à l'aide de jQuery $(document).prêt() gestionnaire pour ce et de manipuler les reportviewer html bar à partir de là. La nouvelle ReportViewer composant .NET 4 est par défaut basé sur ajax (pas d'Iframe), ce qui le rend encore plus facile. Mais même si votre rapport est à l'intérieur d'une Iframe, il y a toujours des moyens pour accéder à l'aide de jquery. Désolé que je ne peux pas poster tout le code (il serait trop compliqué de les présenter d'une manière compréhensible), mais je peux vous assurer qu'il fonctionne et qu'il n'est pas vraiment difficile.
merci, malheureusement je suis toujours coincé avec .NET3.5 et l'iframe pour l'instant, mais je crois que je vais perdre avec JQuery et voir ce qui se passe.
La version précédente de mon ReportViewer mod script est basé sur le 3.5 ReportViewer et jQuery ainsi et a pris environ 2 à 3 heures de code, c'est certainement faisable. Bonne chance!
Je l'Ai fait pour ajouter un bouton d'impression, qui fonctionne sur n'importe quel navigateur 🙂
OriginalL'auteur Adrian Grigore
J'ai eu cette question pour al ong temps, j'ai trouvé la réponse après une longue cravate et la principale source de kowledge que j'ai utilisé était ce webpega: je tiens à vous remercier tous les gars d'ajouter le code qui m'a permis de le faire et une photo du résultat.
Au lieu d'utiliser le ReportViewer Classe, vous devez créer un nouveau classs, dans mon cas, j'ai nommé il ReportViewerPlus et il va comme ceci:
Vous devez ajouter le bouton directement dans le constructeur de la classe et vous pouvez configurer le bouton dans votre designer.
Voici une photo du résultat, pas parfait, mais assez pour aller(coffre-fort lien, je le jure, mais je ne peux pas poster mes propres photos, n'ont pas assez de réputation).
http://prntscr.com/5lfssj
Si vous regardez attentivement, dans le code de la classe, vous verriez plus ou moins comment il fonctionne et vous pourriez faire vos modifications et de le rendre possible pour le mettre en place dans d'autres site de la barre d'outils.
Je vous remercie beaucoup de m'avoir aidé dans le passé, j'espère que cela aide beaucoup de gens!
OriginalL'auteur alex_vkcr
Pour VS2013 web ReportViewer V11 (indiqué que le rv), le code ci-dessous ajoute un bouton.
OriginalL'auteur Joseph
Vous êtes généralement supposer pour créer votre propre barre d'outils si vous souhaitez le modifier. Votre solution pour éliminer les boutons fonctionnera probablement si c'est tout ce que vous devez faire, mais si vous voulez ajouter votre propre, vous devriez probablement juste de mordre la balle et de construire un remplacement.
OriginalL'auteur palehorse
Vous pouvez modifier les contrôles reportviewer par CustomizeReportToolStrip méthode.
cet exemple supprimer Bouton de mise en Page, Mise en Page Bouton en WinForm
OriginalL'auteur lison