根据你提供的代码片段,我无法确定具体的问题原因。但是,如果在使用 `ucSearchTextbox` 控件时出现了新增行数据是上一行选择框内容的情况,可能是因为你没有正确地处理控件的 `SelectComplated` 事件。
当用户选择一个新的项时,`ucSearchTextbox` 控件会触发 `SelectComplated` 事件。你需要在事件处理程序中更新相关的数据,以确保显示的内容与用户选择的项一致。以下是一个示例:
```csharp
private void ucSearchTextbox_SelectComplated(object sender, EventArgs e)
{
CommonControls.ucSearchTextbox searchTxb = sender as CommonControls.ucSearchTextbox;
DataRow drSelect = searchTxb.SelectedItemObj as DataRow;
if (drSelect == null)
return;
ClsMaterialInfo_Grid SelectedMaterialAllInfo = new ClsMaterialInfo_Grid();
SelectedMaterialAllInfo.Material_ColShow = drSelect["名称"].ToString();
// 更新相关数据
UpdateData(SelectedMaterialAllInfo);
}
```
在上面的代码中,`UpdateData` 方法用于更新相关数据,以确保显示的内容与用户选择的项一致。你需要根据具体的业务逻辑实现该方法。另外,如果你在 `UpdateData` 方法中修改了数据源,需要重新绑定控件以刷新显示。