2017-11-10 2 views
1

WPF로 간단한 인스 타 그램 피드를 표시하려고합니다. Instruct API에서 검색 한 이미지 url의 ObservableCollection에 바인딩 된 ListView가 있습니다. 웬일인지 처음 10 개 정도만로드 할 수 있습니다 (더 많이 바인딩하려고 시도하고 있음에도 불구하고). 저해상도 이미지를로드하려고하면 정상적으로 작동하는 것 같습니다. 그러나 나는 어쨌든 거대한 이미지에 대해서 이야기하지 않고있다.웹에서 많은 이미지를로드하는 데 문제가 있습니다.

다음은 인 스턴 그램의 하드 코딩 된 이미지 목록이있는 몇 가지 예제 코드입니다. 나를 위해, 이것은 처음 10을로드하고 11을 놓친 다음 12를로드합니다. 이유는 모르겠습니다.

XAML : 뒤에

<ListView x:Name="List" ScrollViewer.HorizontalScrollBarVisibility="Disabled" ScrollViewer.VerticalScrollBarVisibility="Hidden" ScrollViewer.CanContentScroll="False"> 
    <ListView.ItemsPanel> 
     <ItemsPanelTemplate> 
      <WrapPanel /> 
     </ItemsPanelTemplate> 
    </ListView.ItemsPanel> 
    <ListView.ItemTemplate> 
     <DataTemplate> 
      <Grid Width="250" Height="250" Background="Orange"> 
       <Image Margin="3" Source="{Binding}" Stretch="Uniform" VerticalAlignment="Center" /> 
      </Grid> 
     </DataTemplate> 
    </ListView.ItemTemplate> 
</ListView> 

코드 :

List<string> content = new List<string>() 
{ 
    "https://scontent.cdninstagram.com/t51.2885-15/s640x640/sh0.08/e35/23498621_155088151891201_5838888733310451712_n.jpg",  
    "https://scontent.cdninstagram.com/t51.2885-15/s640x640/e15/23421369_1935881716650536_2751759012239245312_n.jpg", 
    "https://scontent.cdninstagram.com/t51.2885-15/s640x640/sh0.08/e35/23498900_2424691114423634_1760461413358239744_n.jpg", 
    "https://scontent.cdninstagram.com/t51.2885-15/s640x640/sh0.08/e35/23498900_2424691114423634_1760461413358239744_n.jpg", 
    "https://scontent.cdninstagram.com/t51.2885-15/s640x640/sh0.08/e35/23347618_263128534210376_920911369891479552_n.jpg", 
    "https://scontent.cdninstagram.com/t51.2885-15/s640x640/sh0.08/e35/23421069_1500830839998934_8413516091602501632_n.jpg", 
    "https://scontent.cdninstagram.com/t51.2885-15/s640x640/sh0.08/e35/23417348_742804169243503_6556496499100876800_n.jpg", 
    "https://scontent.cdninstagram.com/t51.2885-15/s640x640/sh0.08/e35/23347902_2017564028488677_2880579113104441344_n.jpg", 
    "https://scontent.cdninstagram.com/t51.2885-15/s640x640/sh0.08/e35/23421331_334537296949861_4296430067371737088_n.jpg", 
    "https://scontent.cdninstagram.com/t51.2885-15/s640x640/sh0.08/e35/23421331_334537296949861_4296430067371737088_n.jpg", 
    "https://scontent.cdninstagram.com/t51.2885-15/s640x640/sh0.08/e35/23416590_1928818560779337_7080637368553701376_n.jpg", 
    "https://scontent.cdninstagram.com/t51.2885-15/sh0.08/e35/p640x640/23421758_491705774540588_6178820534202007552_n.jpg", 
    "https://scontent.cdninstagram.com/t51.2885-15/s640x640/sh0.08/e35/23421099_1728264697245367_6448825186568372224_n.jpg", 
    "https://scontent.cdninstagram.com/t51.2885-15/s640x640/sh0.08/e35/23416994_133163334113394_1499431022142423040_n.jpg", 
    "https://scontent.cdninstagram.com/t51.2885-15/s640x640/sh0.08/e35/23421239_1483718185060885_8134914164545028096_n.jpg", 
    "https://scontent.cdninstagram.com/t51.2885-15/s640x640/sh0.08/e35/23280089_1942832749376286_3936575794389712896_n.jpg", 
    "https://scontent.cdninstagram.com/t51.2885-15/s640x640/sh0.08/e35/23347674_2006888666245374_7306582919252803584_n.jpg", 
    "https://scontent.cdninstagram.com/t51.2885-15/s640x640/sh0.08/e35/23347388_119626992143009_7585283007787827200_n.jpg", 
    "https://scontent.cdninstagram.com/t51.2885-15/s640x640/sh0.08/e35/23421865_90030116_1326331715420946432_n.jpg", 
    "https://scontent.cdninstagram.com/t51.2885-15/s640x640/sh0.08/e35/23421253_148762415872849_1558483017121398784_n.jpg", 
    "https://scontent.cdninstagram.com/t51.2885-15/sh0.08/e35/p640x640/23507217_1953269574998281_6711372701967056896_n.jpg", 
    "https://scontent.cdninstagram.com/t51.2885-15/sh0.08/e35/p640x640/23507217_1953269574998281_6711372701967056896_n.jpg", 
    "https://scontent.cdninstagram.com/t51.2885-15/s640x640/sh0.08/e35/23498098_2009691429314434_8349013357923139584_n.jpg", 
    "https://scontent.cdninstagram.com/t51.2885-15/e15/23347679_315062128974030_5091325576380153856_n.jpg", 
    "https://scontent.cdninstagram.com/t51.2885-15/sh0.08/e35/p640x640/23421083_1777350415899180_3004366087824343040_n.jpg", 
    "https://scontent.cdninstagram.com/t51.2885-15/sh0.08/e35/p640x640/23421083_1777350415899180_3004366087824343040_n.jpg", 
    "https://scontent.cdninstagram.com/t51.2885-15/s640x640/sh0.08/e35/23498903_773821689486761_9202713497564086272_n.jpg" 
}; 

List.ItemsSource = content; 
+0

ObservableCollection이 완전히 중복 된 것으로 보입니다. List.ItemsSource = content;를 쓸 수도 있습니다. 어떤 이유로 든 필요한 경우,'oDataCollection = new ObservableCollection (content); ' – Clemens

+0

네가 맞다. 그것은 바인딩에서 그대로 남겨 두었다. 이 예제 코드에서는 표시하지 않습니다. 관찰 가능한 컬렉션을 제거하기 위해 지금 코드를 편집했습니다. – user2424495

답변

1

당신은 응용 프로그램의 동일한 호스트에 대한 최대 연결 제한으로 실행하고 있습니다.

<system.net> 
    <connectionManagement> 
    <add address="*" maxconnection="1000" /> 
    </connectionManagement> 
</system.net> 

당신이 here에 대한 자세한 내용을보실 수 있습니다 : 당신의 app.config 파일에서

, 다음 아래 설정을 추가 할 수 있습니다. 분명히 응용 프로그램이 실제로 필요로하는 항목에 맞게 항목을 조정해야합니다.

+0

완벽한 감사합니다! – user2424495