Imprimer un "form" avec un bouton [Résolu]

nico5969 32 Messages postés mardi 29 juillet 2008Date d'inscription 14 avril 2009 Dernière intervention - 19 sept. 2008 à 12:23 - Dernière réponse : nico5969 32 Messages postés mardi 29 juillet 2008Date d'inscription 14 avril 2009 Dernière intervention
- 22 sept. 2008 à 17:03
Alors mon souci est que j'ai une page maitre qui contient une page x.aspx (admettons)
dans cette page "x", j'ai un form (id=form1) et je voudrais lancer une impression à partir d'un bouton

j'ai créé un bouton nommé "impression", à la suite du form

j'y ai affecté le code suivant dans mon code-behind, mais ca ne marche pas....y veut rien imprimer:

Protected

Sub impression_Click(
ByVal form1
As
Object,
ByVal e
As System.EventArgs)
Handles impression.ClickPrint(form1)

End
Sub

J'avais déja un truc similaire via un code javascript mais qui m'imprimait TOUTE la page...moi je ne veux que le FORM1...
merci de m'éclairer de vos lumières

Nico.G
Impossible is Nothing !
Afficher la suite 

Votre réponse

6 réponses

Meilleure réponse
ggtry 417 Messages postés vendredi 13 juin 2008Date d'inscription 21 juillet 2010 Dernière intervention - 22 sept. 2008 à 13:03
3
Merci
Bonjour,

Un exemple simple, ici avec une class css, à mettre dans le head de ta page :

<style type="text/css" media="screen">
    .couleur{
    background-color:#119988;
    }
    </style>
    <style type="text/css" media="print">
    .Noprint{
    display:none;
    }
    </style>

Ensuite, tu précises class="Noprint" (pour les éléments html comme les div, etc.) ou cssclass="Noprint" pour les élements asp.
Par exemple ci-dessous, j'attribue la class "couleur" à une div qui est en dehors du form ainsi que la class "noprint" : à l'écran, tu auras donc un fond coloré sur la div, mais cette div ne sera pas imprimée.
Dans le form, je mets cssclass="Noprint" sur un asp button, pour qu'il ne soit pas imprimé :

Titre

    <form id="form1" runat="server">
   

       
       
   

    </form>

Ne sera, dans ce cas, imprimé que le textbox.

GGtry

Merci ggtry 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 88 internautes ce mois-ci

Commenter la réponse de ggtry
ggtry 417 Messages postés vendredi 13 juin 2008Date d'inscription 21 juillet 2010 Dernière intervention - 19 sept. 2008 à 21:49
0
Merci
Bonsoir,

Ce que tu cherches à faire ne peut être fait ainsi. L'impression d'une page web doit être commandée à partir du navigateur, pas à partir du serveur : donc, tu dois repartir de ton javascript.
Si tu veux seulement imprimer certains éléments de ta page, tu peux passer par une feuille de style css pour laquelle sera spécifié media="print". Dans cette feuille il suffira de mettre display:none pour les éléments à ne pas imprimer.

GGtry
Commenter la réponse de ggtry
nico5969 32 Messages postés mardi 29 juillet 2008Date d'inscription 14 avril 2009 Dernière intervention - 22 sept. 2008 à 11:58
0
Merci
merci GGtry

alors j'arrive bien à affecter la propriétés "display:none;"
mais quand je le fais, l'élément ne s'affiche plus du tout sur ma page...et apparemment l'élément "media" n'existe pas dans les styles.....donc je n'arrive pas à affecter ce "non affichage" uniquement pour l'impression....

une idée ?  :p ;)

Nico.G
Impossible is Nothing !
Commenter la réponse de nico5969
nico5969 32 Messages postés mardi 29 juillet 2008Date d'inscription 14 avril 2009 Dernière intervention - 22 sept. 2008 à 14:52
0
Merci
OK, nickel ca fonctionne... ;)
merci GGtry

petit bonus ... est il possible de définir un style ou une variable (peut etre dans java) pour que la page s'imprime en format "1 page en largeur sur 1 page en hauteur".... ????

Nico.G
Impossible is Nothing !
Commenter la réponse de nico5969
ggtry 417 Messages postés vendredi 13 juin 2008Date d'inscription 21 juillet 2010 Dernière intervention - 22 sept. 2008 à 16:45
0
Merci
Salut,

En toute rigueur, cela n'est pas possible puisque tu ne peux pas déterminer le format de sortie papier de l'imprimante (c'est très souvent du A4, mais pas forcément, marges, etc.)
Tu peux essayer de jouer avec le css, en supposant que ta longueur de page ne varie pas dans de grandes porportions, par exemple en rapetissant le corps de caractères pour l'impression et le hauteur des lignes de tableau, etc. 

GGtry
Commenter la réponse de ggtry
nico5969 32 Messages postés mardi 29 juillet 2008Date d'inscription 14 avril 2009 Dernière intervention - 22 sept. 2008 à 17:03
0
Merci
c'est pas faux.....vu sous cet angle   :p

merci beaucoup en tout cas une fois de plus
et a bientot peut etre ;)

Nico.G
Impossible is Nothing !
Commenter la réponse de nico5969

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.