Par défaut, le langage de données WPF apparaît sous la forme d'une étiquette et entre dans un état d'édition lors d'un clic. Est-il possible de modifier la colonne afin que la zone de texte soit toujours visible (au lieu de dépendre de l'événement click)? Merci d'avance, JPWPF datagridtextcolumn - affiche toujours la zone de texte
2
A
Répondre
1
J'ai mis à jour ma réponse en fonction de votre clarification dans votre commentaire. Vous pouvez définir vous-même le modèle pour les cellules. Voici un exemple où la colonne d'âge utilise des blocs de texte.
XAML:
<Window x:Class="GridTest.Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:Controls="clr-namespace:Microsoft.Windows.Controls;assembly=WPFToolkit"
Height="300" Width="300">
<StackPanel>
<Controls:DataGrid Name="dataGrid" AutoGenerateColumns="False" >
<Controls:DataGrid.Columns>
<Controls:DataGridTextColumn
Header="Name"
Binding="{Binding Path=Name}" />
<Controls:DataGridTemplateColumn Header="Age">
<Controls:DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<TextBox Text="{Binding Path=Age}" />
</DataTemplate>
</Controls:DataGridTemplateColumn.CellTemplate>
<Controls:DataGridTemplateColumn.CellEditingTemplate>
<DataTemplate>
<TextBox Text="{Binding Path=Age}" />
</DataTemplate>
</Controls:DataGridTemplateColumn.CellEditingTemplate>
</Controls:DataGridTemplateColumn>
</Controls:DataGrid.Columns>
</Controls:DataGrid>
</StackPanel>
</Window>
code derrière:
using System;
using System.Collections.Generic;
using System.Windows;
namespace GridTest
{
public partial class Window1 : Window
{
public Window1()
{
InitializeComponent();
dataGrid.ItemsSource = new List<Person>(
new Person[]
{
new Person("Bob", 30),
new Person("Sally", 24),
new Person("Joe", 17)
});
}
}
public class Person
{
public String Name { get; set; }
public int Age { get; set; }
public Person(String name, int age)
{
Name = name;
Age = age;
}
}
}
Questions connexes
- 1. wpf Refonte de DataGridTextColumn
- 2. WPF toujours mettre l'accent sur une zone de texte
- 3. définition de texte sur DataGridTextColumn
- 4. Le texte alternatif sifr affiche toujours
- 5. Gel d'un DataGridTextColumn dans WPF
- 6. wpf: Mousedoubleclick pour la zone de texte
- 7. WPF CommandParameter dans la zone de texte
- 8. zone Confirmer affiche toujours d'abord (javascript, jQuery, .Net)
- 9. SetFocus à une zone de texte wpf
- 10. WPF Expander affiche toujours l'erreur de validation Adorner quand diminué
- 11. Déplacement du curseur de la zone de texte wpf
- 12. WPF Bordure de zone de texte
- 13. WPF Zone de texte persistante caret visible
- 14. Zone de texte WPF en mode "virtuel"
- 15. Composant de recherche pour la zone de texte WPF
- 16. Validation de la zone de texte dans wpf
- 17. .net capacité de la zone de texte wpf
- 18. La saisie de texte de zone de texte en utilisant toujours Jquery 'un caractère derrière'
- 19. ExtJS, affiche la balise de script dans la zone de texte de json obj
- 20. Bouton WPF pour faire défiler la zone de texte
- 21. Définir le focus dans la zone de texte WPF
- 22. Comment affecter un datatemplate à la zone de texte wpf
- 23. WPF Datepicker parcourir les dates dans la zone de texte
- 24. Validation dans la zone de texte dans WPF
- 25. JavaScript: Confirmer la boîte de dialogue qui affiche la valeur d'une zone de texte
- 26. Problème imitant la zone de texte de la fenêtre de sortie VS avec une zone de texte WPF
- 27. WPF Contrôle de zone de texte numérique avec une calculatrice?
- 28. Boîte à outils WPF étendue - Texte de liaison de la zone de texte riche
- 29. Menu contextuel pour la zone de texte
- 30. La zone de texte affiche incorrectement les valeurs après retour à la page (ASP.NET 3.5)
Non, je dis que le DataGridTextColumn est multistate. Le premier état est label. Cliquer sur l'étiquette permet la saisie de données. Perdre la mise au point le fait revenir à l'étiquette. Vous ne voyez que la zone de texte elle-même lors de la modification d'une ligne particulière - je voudrais toujours voir la texbox –