1

我有一個使用可可綁定的NSTableview。我需要禁用表中的排序和這樣做,我發現下面的文字在這裏計算器:以編程方式禁用「創建排序描述符」列

如果使用Cocoa綁定來管理數據,由表列產生的排序描述符,並設置爲NSArrayController的。要停止它,只需打開表列綁定的檢查器,選擇值,並取消選中「創建排序描述符」。

這是行之有效的,但有幾列是在運行時添加的,我需要在運行時以編程方式做同樣的事情。請有人指點我正確的方向?一個例子或教程或任何可以幫助我在運行時做到這一點。基本上我所需要做的就是禁用在運行時創建的列的排序。

回答

1

如果您以編程方式在arraycontroller上設置綁定,則應該可以像這樣傳遞額外的綁定選項。

NSMutableDictionary *bindingOptions = [NSMutableDictionary dictionary]; 
    [bindingOptions setObject:[NSNumber numberWithBool:NO] 
         forKey:NSCreatesSortDescriptorBindingOption]; 
     [column bind:@"value" toObject:self.arrayController withKeyPath:[NSString stringWithFormat:@"arrangedObjects.%@",c.key] options:bindingOptions]; 
+0

yesssssss就像一個魅力!謝謝! – sharkyenergy 2013-03-08 21:27:03

相關問題