Наконец-то я решил проблему.Я создал NSView (давайте назовем его documentContentView), добавил мой NSTableView в качестве подпредставления этого documentContentView, затем я добавил documentContentView в viewView scrollview:
NSTableView *docView = (NSTableView *)self.scrollView.documentView;
id newClipView = [[CustomClipView alloc] initWithFrame:[self.scrollView.contentView frame]];
[self.scrollView setContentView:(NSClipView *)newClipView];
[newClipView setDrawsBackground:NO];
NSView *documentContentView = [[NSView alloc] initWithFrame:docView.bounds];
docView.autoresizingMask = NSViewWidthSizable | NSViewHeightSizable;
[documentContentView addSubview:docView];
[self.scrollView setDocumentView:documentContentView];
[self.scrollView setDrawsBackground:NO];
Я создал свой пользовательскийNSClipView вызвал CustomClipView (на основе этой статьи http://www.cocoadev.com/index.pl?CenteringInsideNSScrollView), и этот подкласс устанавливает источник documentContentView при изменении размера окна. Я также подклассифицировал свое табличное представление, и в методе -reloadData я могу изменить размер documentContentView при просмотре таблицыизменить его содержимое.