Je rencontre un problème lors du tri d'un ListBox avec une liste déroulante. La liste déroulante aura 2 options:Tri d'un ListBox lié à un ObjectDataSource à l'aide d'une liste déroulante avec 2 sélections
Trier par #
Trier par type
La zone de liste contient une liste d'éléments qui sont d'abord classés par ordre croissant par #. Il a le format suivant:
- 1: Red
- 2: Vert
- 3: Bleu
- 4: Red
- 5: Red
Si l'utilisateur choisit Trier Par #, il devrait trier dans l'ordre décroissant s'il est déjà dans l'ordre croissant et s'il est dans l'ordre croissant s'il est dans l'ordre décroissant. Si l'utilisateur choisit Par type, il faut commander les couleurs, puis #, donc la liste ci-dessus devient:
- 1: Red
- 4: Red
- 5: Red
- 2: Vert
- 3: Bleu
Le lisbox est obtient ses données à partir d'un ObjectDataSource qui est défini comme suit:
<asp:ObjectDataSource ID="odsColors" runat="server" SelectMethod="GetColors"
TypeName="XaiSoft.Data">
</asp:ObjectDataSource>
J'ai écrasa une méthode de tri, mais c'est là où je suis coincé à, je ne suis pas sûr de savoir comment faire:
public void SortColorList()
{
}
Je mis à jour la méthode ci-dessus pour montrer ce que je suis Cela va, mais j'obtiens l'erreur suivante:
DataSource et DataSourceID sont définis sur 'lstColors'. Supprimer une définition
protected void SortColorList()
{
XaiSoft.Data.Colors c = new XaiSoft.Data.Colors();
DataTable dt = c.GetColorList();
DataView dv = new DataView(dt);
dv.Sort = "[" + dv.Table.Columns["ColorName"].ColumnName + "] asc";
lstAuctions.DataSource = dv; //Error happens here.
lstAuctions.DataBind();
}
je suis arrivé dans l'erreur, en réglant le DataSourceID = String.Empty;
Merci pour l'aide, XaiSoft
J'ai mis à jour le code ci-dessus pour montrer ce que je vais faire, mais je reçois une erreur . – Xaisoft