LINQクエリの要素と2つのコンボボックスを持つリストがあります。最初のコンボボックスはデータソースとしてリストを使用しますが、2番目のコンボボックスは最初のコンボボックスで選択された項目を使わずに同じリストを使用します。 IE:私は、リストを持っている<>:A、B、C
ComboBox1のオプション:Aは、B、C
ComboBox1の選択項目:
Combobox2オプション:B、C
ここコンボボックスの選択に基づいてリストから項目を減算する
コードです。
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace WindowsFormsApplication1
{
public partial class AdicionarEquipa_Admin: Form
{
private DiagramaEntidadesContainer dbATMT;
public AdicionarEquipa_Admin()
{
InitializeComponent();
dbATMT = new DiagramaEntidadesContainer();
PreencherListas();
}
private void PreencherListas()
{
List<Player> jogadores = (from player in dbATMT.PlayerSet
select player).ToList<Player>();
Player jogadorSelecionado = (Player)cB_addEquipaJogador1.SelectedItem;
List<Player> jogadores2 = new List<Player>();
foreach (Player jogador in jogadores)
{
if (jogador != jogadorSelecionado)
{
jogadores2.Add(jogador);
}
}
cB_addEquipaJogador1.DataSource = jogadores;
cB_addEquipaJogador2.DataSource = jogadores2;
}
private void cB_addEquipaJogador1_SelectedIndexChanged(object sender, EventArgs e)
{
PreencherListas();
}
private void cB_addEquipaJogador2_SelectedIndexChanged(object sender, EventArgs e)
{
PreencherListas();
}
}
}
これは動作しません。 DiagramaEntidadesContainerはado.netデータベースです。
' ''リスト .Remove'''関数はブール値を返します –
fshauge
jogadorSelecionadoをABOVEを必要としません); jogadores2 = jogadores; ' ? –
選択した要素(jogadorSelecionado) – fshauge