Jag kommer inte ihåg hur man skrev... <code> Tack för snappt svar, men jag åker på patrull: Jag tror inte att det går att använda FindItemWithText för att åstadkomma det du vill, så jag hade gjort en egen funktion. Mickael. Berätta gärna lite mera om vad du har och vad du vill ha för resultat så blir det enklare att hjälpa till Hej Simon. Jag måste erkänna att jag inte förstår riktigt vad du menar, men något som förvirrar mig är detta: Mickael, tack för att du har haft tålamod med mig, jag har fått igång det nu, och som du påpekade så hadde jag gjort bort mig.problem med if-sats med and
<code>
if(if(listView1.FindItemWithText==comboBoxFrom.Text)&& if(listView1.FindItemWithText==comboBoxTo.Text))
</code>
Detta fungerar ju inte :-(
Tacksam för hjälpSv: problem med if-sats med and
if(listView1.FindItemWithText==comboBoxFrom.Text && listView1.FindItemWithText==comboBoxTo.Text)
</code>Sv:problem med if-sats med and
<code>
string comboIfrån = comboBoxFrom.Text;
string comboTill = comboBoxTo.Text;
if (listView1.FindItemWithText = comboIfrån && listView1.FindItemWithText = comboTill)
MessageBox.Show("Finns");
</code>
Error:
<info>
Error 5 Operator '&&' cannot be applied to operands of type 'string' and 'method group'
H:\C#\Music_Transpose\Music_Transpose\Music_Transpose\Form1.cs
1152 62 Music_Transpose
</info>
Hur bör jag lösa detta?
Jag lägger in mina poster så här:
<code>
listView1.View = View.Details;
listView1.Columns.Clear();
listView1.Refresh();
listView1.Columns.Add("Akord ifrån " + comboIfrån, 84, HorizontalAlignment.Left);
listView1.Columns.Add("Akord till " + comboTill, 80, HorizontalAlignment.Left);
</code>
Vad jag vill försöka åstakomma är att se till att jag inte lägger in dubbla poster.Sv: problem med if-sats med and
<code>
public bool ItemExists(string myFrom, string myTo)
{
foreach(ListViewItem myItem in listView1.Items)
{
if (myItem.SubItems[0].Text == myFrom && myItem.SubItems[1].Text == myTo)
return true;
}
return false;
}
</code>
/MickeSv:problem med if-sats med and
Det såg ju så väldigt bra ut din funktion men...
<code>
//här är din funktion som du skrev den
public bool ItemExists(string myFrom, string myTo)
{
foreach (ListViewItem myItem in listView1.Items)
{
if (myItem.SubItems[0].Text == myFrom && myItem.SubItems[1].Text == myTo)
return true;
}
return false;
}
//Så här använder jag den
string comboIfrån ="";
if (comboBoxExt.Text != null)
comboIfrån = comboBoxAckord.Text + comboBoxExt.Text;
else
comboIfrån = comboBoxAckord.Text;
string comboTill = textBox1.Text;
if(ItemExists(comboIfrån,comboTill))
{
listView1.View = View.Details;
listView1.Columns.Clear();
listView1.Refresh();
listView1.Columns.Add("Akord ifrån " + comboIfrån, 84, HorizontalAlignment.Left);
listView1.Columns.Add("Akord till " + comboTill, 80, HorizontalAlignment.Left);
}
</code>
Vad som händer är, att den nu inte lägger till de olika SubItems samtidigt, utan först den ena, sedan
vid nytt ackord, den andra.
Den hittar inte heller om ackorden(texten) redan finns.
Finns det något sätt att rädda detta?Sv: problem med if-sats med and
Sv:problem med if-sats med and
Vad det handlar om är, att jag gör ett program för att transponera ackord(4:de vertionen) ackord.
I en combobox väljer man den dur-art som man ha, i nästa den önskade durarten. Därefter så väljer man orginalackord +utökat ackord(t ex 7, m, m7 dim osv) och det färdig transponerade resultatet
kommer då upp i textBox1.
Nu har jag gjort så att man via en richtextbox kan skriva in sin text, och att man kan kopiera in det transponerade ackordet på rätt platts. För att göra det så enkelt som möjligt, så har jag gjort som så att
när ett ackord är färdig transponerat, så lägger jag in det i listViewn då man sen kan klicka för att få in
det på rätt platts. Då vill jag alltså inte ha några dubbleter i listviewn,
Jag hoppas att jag har förklarat mig någolunda förståligt.Sv: problem med if-sats med and
<code>
listView1.Columns.Add("Akord ifrån " + comboIfrån, 84, HorizontalAlignment.Left);
listView1.Columns.Add("Akord till " + comboTill, 80, HorizontalAlignment.Left);
</code>
Kolumnerna ska du väl bara lägga till en gång och sen är det nya "items" som ska in?
<code>
ListViewItem myNewItem = new ListViewItem();
myNewItem.Text = comboIfrån;
myNewItem.SubItems.Add(comboTill);
listView1.Items.Add(myNewItem);
</code>Sv:problem med if-sats med and
Jag har bara en sak till:
Nu så står det "Default" i listViewn under columnen, hur får jag bort det?
[REDIGERAT]
Jag klickade runt lite och så var det borta.
Tack alla som har hjälpt mig och God Jul