L
luca
I'm trying to build a Server Control, it's a calendar to manage sellers
appointments (don't answer me to use and custumize Calendar Control because
unluckily it's not possible for this specific project).
A piece of my control's interface is composed of a table and in each of its
cells are stored informations about a seller, a date and a time range.
Each of these cells has to be an interactive element: I should be able to
process datas related to the clicked cell.
I've some problems joinig datas to each cell and managing events generated
from the cells within my server control:
At the moment I've implemented the table, within my Server Control, putting
an ImageButton in each cell and defining an event handler function
("DateIButton_Command" in the code below) for each ImageButton:
protected override void CreateChildControls()
{
....
for(...)
{
.....
DateIButton = new ImageButton();
DateIButton.CommandArgument = "9/12/2003";
DateIButton.Command += new CommandEventHandler(DateIButton_Command);
...
}
}
And then defining the event handler:
private void DateIButton_Command(object sender, CommandEventArgs e)
{
ExplodeDay(e.CommandArgument.ToString ());
}
The method works, but it has two great problems:
1) When I click on one of the ImageButtons and the page is posted back,
"CreateChildControls" (I use this one as rendering function, is it correct?)
is executed before than "DateIButton_Command". It's a problem because
"DateIButton_Command" sets some variables that the rendering function
"CreateChildControls" has to use in order change graphic interface's
appareance.
2)Using "DateIButton.CommandArgument" I can't assign no more than one single
string as argument for my event handler function "DateIButton_Command". And
I need to give it more than one argument.
How can I solve these problems? Am I using a wrong approach?
Another question: in .NET Calendar Control, it is possible to catch the
DayRender event to customize the rendering function of each single cell of
the calendar. Unluckily I can't use this control for my project, how can I
similarly build a Server Control which generates events which can be
caught and handled from its container?
Thanks in advance.
Luca.
appointments (don't answer me to use and custumize Calendar Control because
unluckily it's not possible for this specific project).
A piece of my control's interface is composed of a table and in each of its
cells are stored informations about a seller, a date and a time range.
Each of these cells has to be an interactive element: I should be able to
process datas related to the clicked cell.
I've some problems joinig datas to each cell and managing events generated
from the cells within my server control:
At the moment I've implemented the table, within my Server Control, putting
an ImageButton in each cell and defining an event handler function
("DateIButton_Command" in the code below) for each ImageButton:
protected override void CreateChildControls()
{
....
for(...)
{
.....
DateIButton = new ImageButton();
DateIButton.CommandArgument = "9/12/2003";
DateIButton.Command += new CommandEventHandler(DateIButton_Command);
...
}
}
And then defining the event handler:
private void DateIButton_Command(object sender, CommandEventArgs e)
{
ExplodeDay(e.CommandArgument.ToString ());
}
The method works, but it has two great problems:
1) When I click on one of the ImageButtons and the page is posted back,
"CreateChildControls" (I use this one as rendering function, is it correct?)
is executed before than "DateIButton_Command". It's a problem because
"DateIButton_Command" sets some variables that the rendering function
"CreateChildControls" has to use in order change graphic interface's
appareance.
2)Using "DateIButton.CommandArgument" I can't assign no more than one single
string as argument for my event handler function "DateIButton_Command". And
I need to give it more than one argument.
How can I solve these problems? Am I using a wrong approach?
Another question: in .NET Calendar Control, it is possible to catch the
DayRender event to customize the rendering function of each single cell of
the calendar. Unluckily I can't use this control for my project, how can I
similarly build a Server Control which generates events which can be
caught and handled from its container?
Thanks in advance.
Luca.