Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
ASP.NET 2.0 / 3.5 / 4.0
ReorderList
martedì 23 novembre 2010 - 23.34
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
Elenco Tags
C#
|
.NET 4.0
Gemini
Profilo
| Expert
856
messaggi | Data Invio:
mar 23 nov 2010 - 23:34
Ciao a tutti
sto provando ad utilizzare un controllo ReorderList per ordinare delle immagini.
Quando clicco su un button voglio salvare queste immagini nell'ordine scelto dell'utente in un db.
Ho provato da codice con un ciclo a salvare salvare le immagini nell'ordine scelto dall'utente, ma sembra che al postback le immagini tornino nella posizione di partenza.
Qualcuno ha un esempio che permette di ordinare delle immagini e da salvare la posizione dell'immagine in un db?
Grazie mille
alx_81
Profilo
| Guru
8.814
messaggi | Data Invio:
mer 24 nov 2010 - 10:16
>Ciao a tutti
Ciao
>Quando clicco su un button voglio salvare queste immagini nell'ordine scelto dell'utente in un db.
come vai a salvarle le posizioni?
>Ho provato da codice con un ciclo a salvare salvare le immagini
>nell'ordine scelto dall'utente, ma sembra che al postback le
>immagini tornino nella posizione di partenza.
ma ricarichi la posizione da database al postback?
>Grazie mille
di nulla!
--
Alessandro Alpi | SQL Server MVP
MCP|MCITP|MCTS|MCT
http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
Gemini
Profilo
| Expert
856
messaggi | Data Invio:
mer 24 nov 2010 - 11:20
Ciao
mi spiego meglio.
All'inizio carico le immagini dal database. Ogni immagine ha associata una posizione. Queste immagini le carico un reorderlist. L'utente ordina le immagini con il mouse. Quando clicca su salva, eseguo questo ciclo:
List<tipoSettoreGallery> Photos()
{
List<tipoSettoreGallery> photos = new List<tipoSettoreGallery>();
foreach (ReorderListItem item in rlGallery.Items)
{
tipoSettoreGallery photo = new tipoSettoreGallery();
TextBox txtDescrizione = (TextBox)item.FindControl("txtDescrizione");
TextBox txtDescrizione_en = (TextBox)item.FindControl("txtDescrizione_en");
HiddenField hdIdPhoto = (HiddenField)item.FindControl("hdIdPhoto");
photo.Id_Photo_Settore = hdIdPhoto.Value;
photo.Descrizione = txtDescrizione.Text;
photo.Descrizione_en = txtDescrizione_en.Text;
photo.Posizione = (item.ItemIndex + 1).ToString();
photos.Add(photo);
}
return photos;
}
solo che le immagini me le ritrovo nella posizione di partenza e non nell'ordine in cui le ho caricate.
Quando parli di ricaricare le immagini, intendi che devo richiamare la funzione che mi ricarica le immagini dal db?
Grazie
sankyu
Profilo
| Senior Member
266
messaggi | Data Invio:
mer 24 nov 2010 - 11:28
che proprieta metti nel SortOrderField del controllo? se vuoi che poi l'ordine venga mantenuto anche nel database devi aggiornare quella proprietà
esempio
SortOrderField = Posizione
se cambi la posizione dovresti cambiare anche il valore di posizione. Appena ho tempo posto un esempio con codice
Consulente e Sviluppatore .net in ambito finanziario
Dai un occhio al mio blog potrebbe tornarti utile
http://dotnetmemo.blogspot.com
Gemini
Profilo
| Expert
856
messaggi | Data Invio:
mer 24 nov 2010 - 11:42
Questo è il mio ReorderList:
<asp:ReorderList ID="rlGallery" AllowReorder="true" DataKeyField="id_photo_settore"
DragHandleAlignment="Left" LayoutType="Table" runat="server"
OnItemDataBound="rlGallery_ItemDataBound" ShowInsertItem="true"
SortOrderField="posizione" ViewStateMode="Enabled" BorderStyle="None"
ClientIDMode="Static">
<ItemTemplate>
<div style="float: left; width: 550px; margin-bottom: 10px;">
<div style="float: left; height: 60px;">
<asp:Image ID="imgPhoto" Height="60" runat="server" />
</div>
<div style="float: left; height: 60px; width: 400px;">
<div style="float: left; height: 30px;">
<div class="row_titolo">
Descrizione</div>
<div class="row_campo">
<asp:TextBox ID="txtDescrizione" TextMode="SingleLine" CssClass="text_box" Columns="30"
runat="server"></asp:TextBox>
</div>
</div>
<div style="float: left; height: 30px;">
<div class="row_titolo">
Descrizione(en)</div>
<div class="row_campo">
<asp:TextBox ID="txtDescrizione_en" TextMode="SingleLine" CssClass="text_box" Columns="30"
runat="server"></asp:TextBox>
</div>
</div>
</div>
<div style="float: left; width: 20px; height: 60px; text-align: center;">
<asp:ImageButton ID="imgbElimina" OnClick="EliminaPhotoGallery" ImageUrl="immagini/delete_16.png"
runat="server" />
</div>
</div>
<asp:HiddenField ID="hdIdPhoto" runat="server" />
</ItemTemplate>
<DragHandleTemplate>
<div style="float: left; width: 18px; height: 60px; padding-top:25px; cursor:move;">
<img src="up_down.gif" title="sposta" />
</div>
</DragHandleTemplate>
</asp:ReorderList>
Altro piccolo problema: il movimento degli elementi da spostare non è fluido. In pratica, clicco sull'immagine per spostare il box e il box rimane agganciato al mouse e devo ricliccare per confermare lo spostamento.
Un bel esempio mi farebbe comodo. Non ho trovato un esempio chiaro e completo.
Grazie
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !