Hi jmilton,
At the moment, the best option would be to register the Icon.StopGreen during the intial Page_Load. Then during the AjaxEvent/AjaxMethod, setting Icon = Icon.StoreGreen will work.
The following sample demonstrates.
Example
<%@ Page Language="C#" %>
<%@ Register Assembly="Coolite.Ext.Web" Namespace="Coolite.Ext.Web" TagPrefix="ext" %>
<script runat="server">
protected void Page_Load(object sender, EventArgs e)
{
if (!Ext.IsAjaxRequest)
{
this.ScriptManager1.RegisterIcon(Icon.StopGreen);
}
}
protected void Button1_Click(object sender, AjaxEventArgs e)
{
this.Window1.Icon = Icon.StopGreen;
}
protected void Button2_Click(object sender, AjaxEventArgs e)
{
this.Window1.Icon = Icon.StopRed;
}
</script>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<ext:ScriptManager ID="ScriptManager1" runat="server" />
<ext:Window
ID="Window1"
runat="server"
Title="Title"
Icon="StopRed">
<Buttons>
<ext:Button ID="Button1" runat="server" Text="Set Green">
<AjaxEvents>
<Click OnEvent="Button1_Click" />
</AjaxEvents>
</ext:Button>
<ext:Button ID="Button2" runat="server" Text="Set Red">
<AjaxEvents>
<Click OnEvent="Button2_Click" />
</AjaxEvents>
</ext:Button>
</Buttons>
</ext:Window>
</form>
</body>
</html>
Hope this helps.