User Profile & Activity

Glenn Layaar Support
Page
of 99
Posted: September 27, 2010 11:31 PM

Based on my test using ChartSeries_DataPoint.aspx sample, using OnAfterInitialize client side event handler, we could get the FilterExpression element based on the available filter info. However, the element will only be available after the pop up has been displayed, hence the setInterval, as shown in the snippet: 

function WebGrid1_OnAfterIntialize(id) 
{
var grid = ISGetObject(id);

setInterval(function () {
try {
var filterInfo = grid.CachePivotFilterInfoCollection[0];
var filterExpElem = test.GetFilterExpressionElement();

filterExpElem.parentNode.parentNode.style.display = "none";
}
catch (err) {}

}, 150);

}


Posted: September 27, 2010 10:22 PM

I have created a feature request so the delete function will automatically called the UndoChanges method depending the state of the row.

The documentation already mention how to cancel changes in pending row during batch update in the article titled, How-to: Undo changes on specific row. This is also valid for the added pending row. 

Posted: September 27, 2010 9:57 PM

I am very sorry that the attachment is corrupted, I have re-attached the sample. Thank you for the feedback, I will consult your suggestion to my supervisor.

In the sample, in the JS function executed after the ajax request, the function to show / hide the grid and menubar is executed. I also refresh the grid to resolve the maximize issue.

Posted: September 22, 2010 11:06 PM

Currently this is a known issue with the HideAnimation and DisplayAnimation UXSplitButton. A fix is being prepared. I do not have a fixed date for the release of this fix, however it is scheduled be released by early October. 

In the mean time, in order to resolve the issue please use the default HideAnimation and ShowAnimation.

Posted: September 22, 2010 10:42 PM

Casting to UXListBoxItem only works if the UXListBox is in Unbound mode. In your case, the UXListBox is bounded to a collection of object. In such case, you will need to cast the item to the Object of the collection.

Attached is a simple sample which demonstrate such scenario.

Posted: September 22, 2010 9:50 PM

Based on my test using the attached sample, the resize issue could be solved by forcing grid refresh during the Show function.

Regarding the CheckBox issue, I modify the page so the showing / hiding grid functionality is invoked after update panel call is over, as detailed in this article. Based on the validation on the server side, assigned a hidden variable to determine which function, show or hide , will be invoked. The button event handler has also been updated using this new process. 

Based on my analysis, the JS error is caused by the WebMenuBar. For this issue, I have submitted a bug report so the issue will be analyzed further by the developer.  

Attached is the modifed page using the functionality described in this post.

Posted: September 21, 2010 11:55 PM

You could iterate the SelectedItems property in order to retrieve the selected items from the list box. In the unbound mode, each object will need to be cast to UXListBoxItem, here is the snippet:

private void uXButton1_Click(object sender, RoutedEventArgs e)
{
string test = "";
foreach (UXListBoxItem item in (IEnumerable<object>)uXListBox1.SelectedItems)
{
test += (string.IsNullOrEmpty(test) ? "" : ", ") + item.Content.ToString();
}

MessageBox.Show("Selected item: " + Environment.NewLine + test);
}


Posted: September 21, 2010 11:05 PM

If you wish to remove newly added row during batchupdate, you will need to invoke UndoChanges method. The Delete method will not work because the newly added row has not actually added to the Grid until we accept changes. You could determine if the row is newly added or not by checking the row state using GetRowState function. Here is the snippet:

function DeleteRow() {
var grid = ISGetObject("WebGrid1");
var selObj = grid.GetSelectedObject();
var rowObj = selObj.ToRowObject()

if (rowObj.GetRowState() == "Added")
rowObj.UndoChanges();
else
rowObj.Delete();
}


Based on the snippet you provided, you are using BatchUpdate feature and VirtualLoad paging. Under such scenario, you could set the Grid property HaltLoadMore set to true in order to abort the load more process once. In your case, you will need to set the property before invoking the Select or ActivateEdit method. Here is the snippet:

function AddRow()
{
var grid = ISGetObject("WebGrid1");
var newRow = grid.RootTable.NewRow(); // create new row object
var cells = newRow.GetCells(); // get WebGridCell collection

// populate new row object
.
.
.

// insert new record
newRow.AddPendingChanges();

grid.HaltLoadMore = true
newRow.GetCell(0).ActivateEdit();

}


 

Posted: September 21, 2010 4:23 AM

Based on my discussion with the developer, you will need to use FileServer for such scenario. We have an article in the WebTextEditor documentation titled "WebFarm and multiple worker requests support with built-in FileStateServer" which has already discussed this feature.

All times are GMT -5. The time now is 3:43 AM.
Previous Next