2009-05-05 8 views
7

comment rendre la colonne invisible de wpf listview? (une façon est de définir la propriété de largeur au minimum lenth mais cette solution n'est pas appropriée) quelqu'un peut-il m'aider?Masquer la colonne de wpf listview

+0

Pourriez-vous poster la définition de votre listview? – ChrisF

+0

Pourquoi avez-vous besoin d'une colonne invisible? Il me semble que vous voulez ajouter des données supplémentaires à la ligne. Si c'est le cas, vous pouvez placer l'objet dans la ligne et utiliser DataTemplates pour rendre le texte. Ensuite, l'objet lui-même est directement accessible en tant qu'élément de liste. –

Répondre

7

Il existe une explication assez simple d'une façon de le faire here.

Trouver et supprimer votre colonne:

var temp = myGridView.Columns[0]; 
myGridView.Columns.RemoveAt(0); 

Insérez la colonne arrière dans la vue:

myGridView.Columns.Add(temp); 
temp.Width = 0; 
temp.Width = Double.NaN; 

le retirer de la collection de colonnes lorsque vous voulez cacher et réinsérez la colonne lorsque vous vouloir l'afficher à nouveau.

+0

Ma ListView n'a pas de propriété Columns. En outre, votre lien est mort. – marc40000

+0

La propriété Columns est sur GridView (la propriété View de ListView.) – mjcopple

1

Pour masquer l'en-tête d'un ListView, vous pouvez modifier la propriété Visibility du ColumnHeaderContainer en remplaçant le style localement.

<ListView> 
<ListView.View> 
    <GridView> 
     <GridView.ColumnHeaderContainerStyle> 
      <Style> 
       <Setter Property="FrameworkElement.Visibility" Value="Collapsed"/> 
      </Style> 
     </GridView.ColumnHeaderContainerStyle> 
     <GridView.Columns> 
      ... 
     </GridView.Columns> 
    </GridView> 
</ListView.View> 

+5

Avez-vous même lu la question? OP demande en fait comment afficher/masquer une colonne entière. –

0

J'espère que cela va aider quelqu'un:

La meilleure façon que j'ai trouvé est de faire ces deux choses: 1.
Définissez la largeur de la colonne à 0 (ceci peut être fait aussi dans le GridViewColumnHeader) - changez le dans le code quand vous voulez montrer la colonne encore.
2. Définissez le paramètre Visibilité de GridViewColumnHeader sur Masqué - définissez-le dans le code si vous souhaitez afficher à nouveau la colonne ou même utiliser une liaison.

Le deuxième élément ci-dessus aide à rendre la colonne non-extensible par l'utilisateur.

Questions connexes