Je suis en train de trouver une solution à cette question que je posais plus tôt: Populate SourceList in Xamarin.Mac appCréer NSView programatically dans Xamarin studio
J'essaie actuellement de mettre en œuvre la méthode GetView
du NSOutlineViewDelegate
pour voir si cela peut créer un texte dans la OutlineView J'ai.
Mais je suis bloqué à essayer d'ajouter des choses à l'objet NSView. Quand je regarde l'exemple OutlineView (celui que vous obtenez par défaut lorsque vous le faites glisser sur votre fenêtre), il y a un TableCellView
pour chaque élément. La structure ressemble à ceci (en-tête d'abord, puis point régulier):
Table Cell View
Static Text - HEADER CELL
Text Field Cell - HEADER CELL
Table Cell View
Image View
Image Cell
Static Text - Table View Cell
Text Field Cell - Table View Cell
Jusqu'à présent, ma méthode ressemble à ceci:
public override NSView GetView (NSOutlineView outlineView, NSTableColumn tableColumn, NSObject item)
{
var navigation = item as Navigation;
var cell = new NSTableCellView();
if (navigation.IsHeader) {
} else {
}
return cell;
}
Ma première deviner ce que l'en-tête, par exemple, je crée NSTableHeaderCell
et définissez la propriété StringValue
sur navigation.Name
. Mais je ne sais pas comment l'ajouter comme un enfant à mon NSTableViewCell
. Ou est-ce que je vais à ce sujet tout à fait faux? Je suis très nouveau sur Mono et Xamarin (je n'ai fait que C# et Visual Studio en utilisant WPF et XAML) et je n'avais encore jamais programmé en Objective-C auparavant (il m'a donc fallu du temps pour comprendre la syntaxe bizarre des méthodes/classes).
serait-ce ou d'une autre override pouvoir détecter quand l'utilisateur a édité la valeur de chaîne du champ de texte d'un article? – salgarcia
@salgarcia Voir cette question de suivi: http://stackoverflow.com/questions/17889328/listen-to-events-from-programatically-created-nsview – TheNextman