Solved

Formview - Binding to edit

Posted on 2009-05-05
3
524 Views
Last Modified: 2012-05-06
My formview is having an issue. I have two dropdown boxes. Facility and Department. The department list is dependent facility. So I call the facility and then then pull the department where facility is equal to what is in that first dropdown. For example..  First dropdown box is Microsoft and the dropdown list all the departments. Then I  using SelectedValue = (Bind etc etc)  to get the specific Facility (Microsoft) and department that is associated with the formview record.
This all works fine.
Now the issue.  If the user wants to edit that facility or department, it does not work. I get an error on the Bind.  Because when I change the facility, the department list needs to change and the Bind is no longer valid.  
So how do I get the field to unbind from the formview when the facility is changed?
If it is not possible, suggestions on how make this form user friendly.  

This form is create by a user.  When they submit it, another user gets the email.  That user logs in and looks at the original submission and they may need to make changes like directly informaton to a differnt department.

0
Comment
Question by:aninec
  • 2
3 Comments
 
LVL 15

Expert Comment

by:NazoUK
ID: 24315077
Yeah, this is a known issue with the way databinding works and a bit awkward to get around.
What I tend to do is remove the SelectedValue = '<%#Bind.....' from the dropdownlist that has its items updated, then in the OnUpdating event of whichever datasource type you are using manually get the value out of the formview using FindControl and plug that into the updateparameters, business object or whatever you are using.

It's a bit difficult to give a concrete example without knowing the datasource you are using. Is it a sqldatasource, object data source etc?
0
 

Author Comment

by:aninec
ID: 24318887
Its SQL.  I am not sure how to approach your method.  
0
 
LVL 15

Accepted Solution

by:
NazoUK earned 500 total points
ID: 24323636
OK, in your sqldatasource add the following: OnUpdating="sqlds_Updating" OnInserting="sqlds_Updating"
You'll also need a parameter in updateparameters and insertparameters that correspond to the field name:

<asp:Parameter Name="fieldName" Type="Int32" DefaultValue="0" />

Then in your code behind add a method to handle this event and get the values out of the FormView and put them into the parameters:

C#:

    protected void sql1_Updating(object sender, SqlDataSourceCommandEventArgs e)
    {
             DropDownList dd = (DropDownList) yourFormView.FindControl("DropDownName");
             e.Command.Parameters["fieldName"].Value = Convert.ToInt32(dd.SelectedValue);
    }

VB:

    Protected Sub sql1_updating(sender as object, e as SqlDataSourceCommandEventArgs)
    {
            Dim dd as DropDownList = Ctype(yourFormView.FindControl("DropDownName"),DropDownList)
            e.Command.Parameters("fieldName").Value = CInt(dd.SelectedValue)
    }

This assumes your dropdowns store int values, if not you'll need to change the code as appropriate.
0

Featured Post

Free Tool: Path Explorer

An intuitive utility to help find the CSS path to UI elements on a webpage. These paths are used frequently in a variety of front-end development and QA automation tasks.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
IEnumerable<T> to a List<T> 8 51
using CK editor in iframes 5 26
How to filter by key press ? 6 54
Web page design problem 3 12
This article discusses the ASP.NET AJAX ModalPopupExtender control. In this article we will show how to use the ModalPopupExtender control, how to display/show/call the ASP.NET AJAX ModalPopupExtender control from javascript, how to show/display/cal…
The article shows the basic steps of integrating an HTML theme template into an ASP.NET MVC project
A short tutorial showing how to set up an email signature in Outlook on the Web (previously known as OWA). For free email signatures designs, visit https://www.mail-signatures.com/articles/signature-templates/?sts=6651 If you want to manage em…
Attackers love to prey on accounts that have privileges. Reducing privileged accounts and protecting privileged accounts therefore is paramount. Users, groups, and service accounts need to be protected to help protect the entire Active Directory …

685 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question