pokaż kod bo jakoś sobie nie wyobrażam
Siadłem dopiero do komputera... Kod odpowiadający za wypełnienie danych. Zrezygnowałem z wypełnienia najpierw listy obrazkami wskazującymi na"obrazek nie istnieje". W XAML-u dodałem (w widoku) IValueCOnverter który po otrzymaniu null zwraca BitmapImege - "obrazek nie istnieje". Dzięki temu zrezygnowałem z 1 pętli.
var result = new List<Entity>();
foreach (SerializedEntity block in knownBlocks)
{
result.Add(new Entity
{
FaceBack = SearchAndSetImage(block.FaceBack, StreamFiles),
FaceBottom = SearchAndSetImage(block.FaceBottom, StreamFiles),
FaceFront = SearchAndSetImage(block.FaceFront, StreamFiles),
FaceLeft = SearchAndSetImage(block.FaceLeft, StreamFiles),
FaceRight = SearchAndSetImage(block.FaceRight, StreamFiles),
FaceTop = SearchAndSetImage(block.FaceTop, StreamFiles),
AnimationKeyFrames = SearchAndSetString(block.AnimationKeyFrames, StreamFiles),
ModelType = block.ModelType,
BlockName = block.BlockName.ToUpper(),
});
}
for (int i = 0; i < result.Count; i++)
{
result[i].Resolution = GetBlockResolution(result[i]);
}
i ten kawałek kodu chciałem sobie zamienić na pętlę bo średnio mi się podoba. Metoda SearchAndSetImage zwraca ImageBitmap ImageSource. Co jakiś czas do interfejsu Entity dodaje nowe dane w miarę nowych potrzeb. Dziękuję za pokazanie magii z refleksjami ale z powodów wydajnościowych przejdę na struct i pozostawię ten kawałek kodu w takim stanie.
Dlaczego chcę użyć struct... no bo http://www.pzielinski.com/?p=1809.