
Ergebnis 1 bis 9 von 9
-
Bin neu hier
- 27.09.2011, 17:41
- #1
Hallo,
ich habe folgendes Problem mit einer Methode die in der String Klasse mit dabei is.
Ich möchte die Methode IndexOf benutzen, nur leider funktioniert die nicht so wie ich will.
Wenn ich jetzt sag:
string test = "hallo du";
int index;
string delete = "du"
index = test.IndexOf(delete);
dann kommt leider -1 raus und net 6 wenn ich allerdings in die Methode IndexOf("du") reinschreibe gehts. Was mach ich denn falsch?
Grüße
-
Gehöre zum Inventar
- 27.09.2011, 21:11
- #2
Hmm... komisch. Der fehlende Strichpunkt hinter dem "du" wirds nicht sein, weil da würde der Compiler schreien (also wohl nur ein Fehler jetzt im Post). Dass du im Programm andere Strings hast und es daran liegt wirds ja nicht sein, oder? Also dass du da evtl. mit Klein/Großschreibung ein Problem hättest?
-
Bin neu hier
- 28.09.2011, 01:29
- #3
Ne ich blick da echt nicht mehr durch. Hoffe jetzt eigentlich nur noch drauf das es vllt ein Bug vom Beta SDK is. Sehr ärgerlich das ganze. oder kann mir hier jemand sagen wie man am besten ne ListBox abspeichert?
-
Gehöre zum Inventar
- 28.09.2011, 11:48
- #4
Was meinst du mit Listbox speichern? Was is in der Listbox drin, was willst du speichern (das ausgewählte Element?).
-
Bin neu hier
- 28.09.2011, 11:56
- #5
In der Listbox sind lauter Checkbox Items. Ich habs jetzt so gemacht, dass er den CheckboxContent in nen Strichpunkt getrenntes Textfile speichert und dann wieder die Checkboxen in der Listbox aus diesen Strings erstellt. Leider kann ich jetzt keine einzelnen Elemente löschen da ich diese Änderung nicht speichern kann, weil das mit dem modifizieren des strings net funzt.
-
Gehöre zum Inventar
- 28.09.2011, 13:16
- #6
Ich hätte ja ein eigenes ListItem-Objekt gemacht in der Art:
private object ListItem {
bool Checked { get; set; }
string Text { get; set; }
}
Die dann in ne List<ListItem> gepackt und das dann der der ListBox als ListDataSource mitgegeben. Dann hätte ich ein Template für die ListItems erstellt, dass halt das Checked Property an das Checked der Checkbox bindet und den Text an den Content der Listbox.
Großer Vorteil dabei: du kannst einfach die Liste der Items wegspeichern, modifizieren, etc.
-
Bin neu hier
- 28.09.2011, 13:32
- #7
klingt kompliziert
. Naja da muss ich mich wohl noch bisl damit auseinander setzen. Oder hättest du vllt ne Seite wo das Thema mit den ListDataSource erklärt wird?
-
Gehöre zum Inventar
- 28.09.2011, 15:57
- #8
Ich hab grad keine Seite zur Hand, kann dir aber ein paar Zeilen dazu aus meinem Tool Connectivity Shortcuts posten:
Zuerst mal die Sachen im XAML-Code:
<Grid.Resources>
<DataTemplate x:Name="IconStyleTemplate">
<StackPanel Orientation="Horizontal">
<Image Source="{Binding Image}" Width="80" Height="80"/>
<TextBlock Text="{Binding IconStyle}" FontSize="40" VerticalAlignment="Center" Margin="20"/>
</StackPanel>
</DataTemplate>
</Grid.Resources>
Das ist zunächst mal das DataTemplate für die Klasse. Rein prinzipiell kannst du in dem Template beliebig komplexe Strukturen definieren. Du würdest wahrscheinlich was haben wie Checked="{Binding Checked}" - ausgehend von der von mir vorher geposteten Klasse.
Ich verwende bei mir einen Listpicker - eine ListBox sollte da aber recht ähnlich sein:
<toolkit:ListPicker Name="lipIconStyle" FullModeHeader="Icon Style" FullModeItemTemplate="{StaticResource IconStyleTemplate}" ItemTemplate="{StaticResource IconStyleTemplate}" ItemsSource="{Binding}" SelectionChanged="lipIconStyle_SelectionChanged"/>
Das interessante ist hier eigentlich nur das Zuweisen des ItemTemplate, damit das Ding weiß was es dafür verwenden soll. Der ListPicker aus dem Silverlight Toolkit hat zusätzlich jedoch noch einen FullMode (da geht das Ding über den ganzen Bildschirm auf) und da kann man theoretisch ein anderes Template definieren. Sollte dich nicht betreffen - nur zur Erklärung warum das dasteht.
Jetzt zum Code, das ist ein Ausschnitt aus meinem OnNavigatedTo der Page:
List<StyleContainer> styles = new List<StyleContainer>();
styles.Add(new StyleContainer() { IconStyle = IconStyle.Original, Image = MainPage.GetCombinedTileImage(Images.ImageHelper.GetOriginalImage(mType), (Color)Application.Current.Resources["PhoneAccentColor"]) });
styles.Add(new StyleContainer() { IconStyle = IconStyle.Small, Image = MainPage.GetCombinedTileImage(Images.ImageHelper.GetSmallImage(mType), (Color)Application.Current.Resources["PhoneAccentColor"]) });
styles.Add(new StyleContainer() { IconStyle = IconStyle.Platin, Image = MainPage.GetCombinedTileImage(Images.ImageHelper.GetPlatinImage(mType), (Color)Application.Current.Resources["PhoneAccentColor"]) });
styles.Add(new StyleContainer() { IconStyle = IconStyle.Sign, Image = MainPage.GetCombinedTileImage(Images.ImageHelper.GetSignImage(mType), (Color)Application.Current.Resources["PhoneAccentColor"]) });
styles.Add(new StyleContainer() { IconStyle = IconStyle.Colored, Image = MainPage.GetCombinedTileImage(Images.ImageHelper.GetColoredImage(mType), (Color)Application.Current.Resources["PhoneAccentColor"]) });
this.lipIconStyle.ItemsSource = styles;
Die Aussage vorher vonwegen ListDataSource war falsch. Heißt in Silverlight ItemsSource (ListDataSource wars in WinForms).
Danach hast du die Liste der Elemente in dem Picker. Willst du eine Auswahl festlegen musst du das selbst tun. Fügst du jetzt jedoch z.B. in die Liste "styles" ein weiteres Element ein, so taucht das automatisch in der Liste auf. Visualisiert wird das ganze durch das jeweilige DataTemplate. Willst du jetzt die Elemente in der Liste wegsichern, wird halt einfach das Styles weggesichert und fertig (ich hab fix bestimmte Dinge da drinnen => ich bau die Liste hartcodiert zusammen).
Zum Schluß nochmal die von mir verwendete Klasse für das Ganze:
public class StyleContainer {
public WriteableBitmap Image {
get;
set;
}
public IconStyle IconStyle {
get;
set;
}
}
Änderst du per Code ein Property einer der Klassen nachdem du es in die Liste gehängt hast kriegt das die ListBox nicht mit. Es gibt aber ein Interface samt Event das man implementieren kann, dann geht auch das.
Generell Infos dazu sollten sich mit den Stichworten: Silverlight und Data Binding finden lassen. Hoffe das hilft.
-
Bin neu hier
- 28.09.2011, 16:07
- #9
Vielen Dank schon mal für deine Mühe! Werd ich mir mal anguggn!
Ähnliche Themen
-
Fotos mit andere Methode schiessen
Von shimi im Forum HTC Desire HDAntworten: 7Letzter Beitrag: 14.04.2011, 14:43 -
Omnius Methode ?!
Von Mülleristdergrößte im Forum Sony Ericsson Xperia X10 Root und ROMAntworten: 8Letzter Beitrag: 16.07.2010, 09:37 -
Erst HSPL, dann Original HTC ROM mit SD Methode ?
Von Unregistriert im Forum HTC HD2 ROM UpgradeAntworten: 34Letzter Beitrag: 21.03.2010, 19:08 -
Wählbare eingabe Methode .
Von Unregistriert im Forum HTC Touch2Antworten: 0Letzter Beitrag: 25.12.2009, 21:47
Pixel 10 Serie mit Problemen:...